python - 将 Json 放入 DynamoDB 项目

标签 python aws-lambda amazon-dynamodb

我正在尝试更新对 AWS DynamoDB 中的项目的 json 响应,但出现以下错误。有人可以帮忙吗

import boto3
import json

dynamoDB = boto3.client('dynamodb')

def lambda_handler(event, context):
    testinfo = {"Smile":{"Confidence": '99.8970947265625',"Value": 
"True"}}
    dynamoDB.put_item(TableName='DetectedInfo',Item={'DateTime': 
'12282018','Info': json.dumps(testinfo)})

错误:

ParamValidationError:参数验证失败: 参数 Item.Info 的类型无效,值:[{"Smile": {"Confidence": "99.8970947265625", "Value": "True"}}],类型: ,有效类型: 参数 Item.DateTime 的类型无效,值:12132018,类型:,有效类型:

最佳答案

它必须具有以下形式:

dynamoDB.put_item(TableName='DetectedInfo',
Item={
'DateTime': {
'N':'12282018'},
'Info': {
'S':json.dumps(testinfo)}
})

这里的N,S是变量的类型。您需要检查aws文档中允许的数据类型并进行相应的应用。

关于python - 将 Json 放入 DynamoDB 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53953991/

相关文章:

python - 从文件列创建嵌套列表 (Python)

python - 使用实时相机预览更新 matplotlib 中的帧

node.js - 使用 AWS 在 Dynamodb 中搜索

python - AWS CLI - 如何过滤返回的 DynamoDB 项目?

python - 如何让 DictReader 打开以分号作为字段分隔符的文件?

python - Kivy 无法导入相机

node.js - Step Functions 错误处理函数参数

aws-lambda - 有没有办法在 AWS Glue 作业结束时触发 AWS Lambda 函数?

amazon-web-services - 无法从 AWS StepFunctions 正确插入 DynamoDB 项目

android - 来自 AWS Android SDK 示例应用程序的 DynamoDB 表不在控制台中