gpt4 book ai didi

json - 使用 AWS CLI 将使用 Json 文件的项目放入 AWS DynamoDB 中

转载 作者:行者123 更新时间:2023-12-02 00:00:44 25 4
gpt4 key购买 nike

使用 AWS CLI 和以下命令将以下 JSON 放入 dynamo 数据库中时:

aws dynamodb put-item --table-name ScreenList --item file://tableName.json

我收到参数验证失败异常。我已经严格浏览了 AWS 文档,但未能找到插入复杂 json 的示例。欢迎提供任何小帮助。

更新后的 Json :

{
"itemName": {
"S": "SCREEN_LIST"
},
"productName": {
"S": "P2P_MOBITEL"
},
"screenList": {
"L": [
{
"menu": {
"L": [
{
"M": {
"menuId": {
"N": "1"
},
"menuText": {
"S": "ENG_HEADING"
},
"menuType": {
"S": "Dynamic"
}
}
}
]
},
"M": {
"screenFooter": {
"S": "F_LANGUAGE_CHANGE"
},
"screenHeader": {
"S": "H_LANGUAGE_CHANGE"
},
"screenId": {
"S": "LANGUAGE_CHANGE"
},
"screenType": {
"S": ""
}
}
}
]
}
}

最佳答案

您似乎错误地定义了复杂类型。根据AWS documentation你应该定义一个像这样的列表:

"L": ["Cookies", "Coffee", 3.14159]

map 应该这样定义:

"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}

这意味着 menu 映射应该这样定义:

"menu": { 
"L": [
{
"M": {
"menuId": {"N" :"1"},
"menuText": {"S" :"PACKS_SCREEN"},
"menuType": {"S" :"Dynamic"}
}
}
]
}

注意“M”和“L”属性。

您应该以类似的方式更改 JSON 的其余部分。

您可以找到完整的 JSON 定义 here in the Options section .

更新

现在您的列表定义不正确。你有:

   "screenList":{  
"L":[
{
"menu":{ ... },
"M":{ ... }
}
]
}

虽然应该是:

   "screenList":{  
"L":[
{
"M":{ ... }
},
{
"M":{ ... }
},
]
}

关于json - 使用 AWS CLI 将使用 Json 文件的项目放入 AWS DynamoDB 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45481673/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com