dynamo = boto3.resource('dynamodb').Table('Audit')
param = event.get('item')
res = dynamo.put_item(Item = param)

Я хотел вставить json, который поступает из события в API Gateway AWS, в таблицу в DynamoDB

0
Sandeep 24 Ноя 2017 в 08:05

1 ответ

Лучший ответ

Если твой json мне нравится это

{
  "item": {
    "item_name": "laddu",
    "short_title": "DAP",
    "description": "This is to create an doctor appointment",
    "cost": "300"
  }
}

И вставка python DynamoDb ниже

import boto3
import json

def lambda_handler(event, context):
    #getting the instance of dynamodb table
    dynamo = boto3.resource('dynamodb').Table(TABLE_NAME)
    #checking weather any record is exist or not
    if (len(dynamo.get_item(Key={'item_name':event.get('item')['item_name']})) > 1):
        result = "Failure"
        msg = "Item Already exist with same name"
    else :
        #inserting the item from the responce
        res = dynamo.put_item(Item = event.get('item'))
        if res["ResponseMetadata"]["HTTPStatusCode"] == 200 :
            result = "Success"
            msg = "Item created successfuly"
        else:
            result = "Failure"
            msg = "Failed to create Item"

    #for responce to the user
    data = {}
    data['result'] = result
    data['msg'] = msg
    #construct json object
    json_data = json.dumps(data)

    return json_data

Это сработало для меня ....

0
Amaresh Jana 24 Ноя 2017 в 05:09