Хм, я смог воспроизвести это, и похоже, что он работает правильно для меня. Я обновлю ответ более подробной информацией, включая схему и запрос, которые я выполнил, чтобы вы могли отладить.
могу получить объект JSON в ответ от DynamoDB? Я храню данные в БД в виде массива объекта в формате JSON. У меня есть следующий запрос шаблона сопоставления
{
"version": "2017-02-28",
"operation": "PutItem",
"key": {
"userId": {
"S": "$context.identity.username"
}
},
#set( $attrs = $util.dynamodb.toMapValues($ctx.args))
#set( $attrs.categories = $util.dynamodb.toDynamoDB($ctx.args.categories))
"attributeValues": $util.toJson($attrs)
}
и отображение шаблона ответа
#set( $result = $ctx.result)
#set( $result.categories = $util.parseJson($ctx.result.categories))
$util.toJson($result)
но я получил ответ в формате DynamoDB JSON
"createItem": {
"title": "Test 1",
"categories": "[{name=food, id=2}, {name=eat, id=1}]"
}
в DynamoDB дату сохранить как
"categories": {
"L": [
{
"M": {
"id": {
"S": "2"
},
"name": {
"S": "food"
}
}
},
{
"M": {
"id": {
"S": "1"
},
"name": {
"S": "eat"
}
}
}
]
}
Как разобрать это в нормальный JSON или объект?