用于在AWS DynamoDB中的表中放置新项的JSON主体

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用于在AWS DynamoDB中的表中放置新项的JSON主体相关的知识,希望对你有一定的参考价值。

我正在尝试进行HTTP POST以将项目放入DynamoDB表(称为“策略”)

我正在努力获得正确的格式。该项只有一个键是“PolicyNumber”,我添加的另一个项称为“Name”

我的JSON如下: -

{"TableName":"Policy","Item":
{"PolicyNumber":"S":"10001"},"Name":{"S":"Test10001"}}}

我得到如下错误(显然所有一个字符串): -

{
"statusCode": "400",
"body": "One or more parameter values were invalid: Type mismatch for key 
PolicyNumber expected: S actual: M",
"headers": {
"Content-Type": "application/json"
}
}

如果我运行GET列出已存在的项目,我会得到以下响应(这些项目通过控制台添加): -

{
"statusCode": "200",
"body": "{"Items":[{"PolicyNumber":"12345","Name":"Fred"},{"PolicyNumber":"78787","Name":"Bill"}],"Count":2,"ScannedCount":2}"
,
"headers": {
"Content-Type": "application/json"
}

}

任何帮助非常感谢!

答案

编辑:

  • 解:

{ "S": "10001" }取代"10001"{ "S": "Test10001" }取代"Test10001"

类型是隐含的。

  • 旧答案:

{之后缺少PolicyNumber。你应该有这个JSON:

{ "TableName": "Policy",
  "Item": {
     "PolicyNumber": { "S": "10001" },
     "Name": { "S": "Test10001" }
  }
}

了解更多关于AWS DynamoDB PutItem here的信息。

以上是关于用于在AWS DynamoDB中的表中放置新项的JSON主体的主要内容,如果未能解决你的问题,请参考以下文章

AWS - 在 DynamoDB 表中放置一个 GeoPoing 并对其进行查询 - node.js

Aws Appsync 解析器:如何创建解析器以更新列表映射 (DynaMoDB) 中的项目

过滤 AWS DynamoDB 中的映射对象

Aws Dynamodb数据导出到S3

在 AWS CloudFormation 模板中引用 !Ref DynamoDB 表名

在 AWS 上找不到 404