Trong phần này chúng ta sẽ tạo function để thêm thông tin tài liệu được lưu trong DynamoDB table.
Mở bảng điều khiển AWS Lambda
Ấn nút Create function

Nhập tên function: upload_document

import json
import boto3
import os
from datetime import datetime, timezone
dynamodb = boto3.resource('dynamodb')
def lambda_handler(event, context):
table_name = os.environ['TABLE_NAME']
now = datetime.now(tz=timezone.utc)
dt_string = now.strftime("%d/%m/%Y %H:%M:%S")
#doc_data = json.loads(event["body"])
doc_data = event["body"]
path = "protected/{}/{}".format(doc_data['identityId'], doc_data['file'])
doc_data.update({"path": path, "modified": dt_string})
table = dynamodb.Table(table_name)
table.put_item(Item = doc_data)
# TODO implement
return {
'statusCode': 200,
'body': 'successfully upload!',
'headers': {
'Content-Type': 'application/json',
"Access-Control-Allow-Headers": "Access-Control-Allow-Headers, Origin, Accept, X-Requested-With, Content-Type, Access-Control-Request-Method,X-Access-Token, XKey, Authorization",
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET,PUT,POST,DELETE,OPTIONS"
}
}

Đoạn code trên thực hiện lấy biến môi trường TABLE_NAME và dữ liệu của event. Sau đó thêm từng item vào DynamoDB table.

TABLE_NAME làm key


,
{
"Effect": "Allow",
"Action": "dynamoDB:PutItem",
"Resource": "arn:aws:dynamodb:REGION:ACCOUNT_ID:table/Documents"
}
Thay REGION và ACCOUNT_ID bằng vùng mà bạn tạo bảng và account id của bạn.

