如何解决使用 AWS Step Functions 将整个 json 插入到 Dynamo DB 中的字段
我正在尝试使用 AWS Step Functions 将 PutItem 放入 DynamoDB。
我设法使用简单的字符串字段 (S) 保存了 Item,但其中一个字段应存储整个 JSON 负载。所以应该是地图(M)。
示例 JSON:
{
"firstMap": {
"field": "something",},"secondMap": {
"nestedMap": {
"field": "something","anothernestedMap": [
{
"field": "something","oneMorenestedMap": {
"andOneMore": {
"field": "something","arrayComesHere": [
{
"andAgainnestedMap": {
"field": "something","andAgain": [
{
"field": "something","alsonestedArray": [
{
"field": "something"
}
]
}
]
}
]
},"letItBeFinalOne": [
{
"field": "something"
}
]
}
]
...
我想要做的就是说,嘿 Step Function,请像这样将整个 JSON 插入到 item 字段中
"Item": {
...
"whole_payload": {
"M.$": "$"
},} ...
但是它失败了,因为它只接受一个 Map 来处理。 所以我需要直接迭代所有嵌套的地图并用'M'标记它们。
有没有办法让它自己解决?
就像在 Typescript 中一样,我可以使用 aws.DynamoDB.DocumentClient() 并将整个 JSON 放入该字段,它会自行解析所有地图
解决方法
遇到一个向 AWS Step Functions 团队提出类似请求的线程。增强的新功能允许更接近您正在寻找的东西。
示例片段:
...
"Parameters": {
"TableName" : "dynamodb-table","Item":{
"requestId" : {
"S.$": "$.requestId"
},"payload": {
"S.$":"States.JsonToString($)"
}
}
...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。