我使用AWS API网关创建了一个post rest API。其余的API将在dynamoDB表中添加数据"元数据"它有四列。
其余API的输入是一个字符串,如" 2 -164 4104 1.50",其中每个空格分隔的值属于"元数据"表列按顺序排列。
我无法弄清楚如何配置Body Mapping Templates,它可以解析输入字符串并按顺序将其映射到表格列。
所需输出如下图所示: https://i.stack.imgur.com/d2fpF.png
我试图拆分字符串,拆分很好。但是我得到了响应 " __ type":" com.amazon.coral.service#SerializationException"
我的映射是content-type:application / json:
#set($rawAPIData=$inout.path('$'))
#set($s=$rawAPIData.split(""))
"TableName": "Metadata",
"Item": {
"id": {
"S": "$s.get(0)"
},
"cap": {
"S": "$s.get(1)"
},
"counter": {
"S": "$s.get(2)"
},
"timer": {
"S": "$s.get(3)"
}
}
输出日志: 转换后的端点请求体:
" TableName":"元数据", " Item":{ " id":{ " S":" 2" }, " cap":{ " S":" -164" }, " counter":{ " S":" 4104" }, "计时器":{ " S":" 1.50" } }
端点响应标头:{Server = Server,Connection = keep-alive,x-amzn-RequestId = J89RJ8GPC2D95GT0AP284PQSPBVV4KQNSO5AEMVJF66Q9ASUAAJG,x-amz-crc32 = 3948637019,Content-Length = 60,Date = Sun,26 Nov 2017 07:08 :49 GMT,Content-Type = application / x-amz-json-1.0} 转换后的方法响应体:{" __ type":" com.amazon.coral.service#SerializationException"}
似乎问题在于将application / json用作内容类型并将输入作为字符串提供。我该如何解决这个用例? 非常感谢帮助。