DynamoDB ReturnValues ​​UPDATED_OLD в AppSync - PullRequest
0 голосов
/ 15 апреля 2019

Я пытаюсь обновить атрибут элемента в таблице DynamoDb с помощью AppSync . После успешного завершения я хочу использовать предыдущее значение этого атрибута в качестве ключа в моем следующем вызове (я использую преобразователи конвейера).

Для достижения этого с DynamoDB вы просто устанавливаете UPDATED_OLD в качестве возвращаемого значения.

Я не могу найти какую-либо документацию для указания возвращаемого значения распознавателя DynamoDB для AppSync. Я попробовал следующее.

{
  "version" : "2018-05-29",
  "operation" : "UpdateItem",
  "key": {
        "id": $util.dynamodb.toDynamoDBJson("foo")
      },
   "condition" : {
   "expression" : "attribute_exists(id)"
    },
    "update" : {
    "expression" : "SET bar = :bar",
    "expressionValues" : {
        ":bar" :  {"S" : "$bar"}
      }
    },
    "returnValues": "UPDATED_OLD"
  }

Но его синтаксис недопустим.

"message": "Unsupported element '$[returnValues]'."

1 Ответ

1 голос
/ 15 апреля 2019

ReturnValues ​​не является допустимым полем для шаблона сопоставления запросов AppSync с DynamoDB.По умолчанию AppSync использует для обновлений параметр ALL_NEW .

...