Я использую шаблон резолвера версии 2018-05-29 для операции UpdateItem, которая должна выдавать ошибку, когда ожидаемая версия! = Версия. Мой шаблон ответа выглядит так:
#if($ctx.error)
$util.error($ctx.error.message, $ctx.error.type, $ctx.result)
#end
$util.toJson($ctx.result)
Третий аргумент функции $ util.error () - это параметры данных, и независимо от того, что я делаю, они возвращаются к нулю. Вот что я получаю:
{
"data": {
"updateUser": null
},
"errors": [
{
"path": [
"updateUser"
],
"data": null,
"errorType": "DynamoDB:ConditionalCheckFailedException",
"errorInfo": null,
"locations": [
{
"line": 97,
"column": 3,
"sourceName": null
}
],
"message": "The conditional request failed (Service: AmazonDynamoDBv2; Status Code: 400; Error Code: ConditionalCheckFailedException; Request ID: D1JD3QSIGLFT9UEULBOQJ7UUI7VV4KQNSO5AEMVJF66Q9ASUAAJG)"
}
]
}
Моя мутация обновления выглядит так:
mutation UpdateUser($updateUserInput: UpdateUserInput!) {
updateUser(input: $updateUserInput) {
id
email
name
createdAt
updatedAt
version
pictures {
id
}
}
}
Неважно, что я делаю, мне кажется, что данные не равны нулю. Какие-либо предложения. Я смотрел на похожие вопросы, но они, кажется, старые.