Ошибка DynamoDB - ValidationException - Недопустимый тип значения атрибута - PullRequest
0 голосов
/ 07 апреля 2020

Не публикуем весь код. Всего несколько фрагментов. Я пытаюсь обновить уже существующий элемент, используя файл ресурсов YML. Попытка добавить новый атрибут «status», который должен иметь значение «Read». Когда я выполняю приведенный ниже код, я получаю неверную ошибку типа значения атрибута.

Файл ресурса DynamoDB-

Type: aws::DynamoDB::table
Table name: noti table
Attribute definitions:
Attribute name: appTargetId
Attritype: S
Attribute name: createDate
Attritype:S
Key schema: 
Attribute name: appTargetId
Key type: HASH
Attribute name: createDate
Key type: RANGE

Обновление кода-

Const data = Jason.parse(event.body);
var stat: string = “READ”;

Const Params: UpdateNotification = {
Table name: process.env.notitable
Key :{ 
AppTargetId : data.appTargetId,
createDate: data.createData
},
UpdateExpression:
“SET status = if_not_exists(status, :val)”,
ExpressionAttributeValues :{
“:val” : stat
},
ReturnValues: “ALL_NEW”,
};

await updateItem(params);

Я даже пытался добавить введите ключ и ExpressionAttributeValues, но он не сработал и выдал ту же ошибку -

Const Params: UpdateNotification = {
Table name: process.env.notitable
Key :{ 
AppTargetId : {S: data.appTargetId},
createDate: {S: data.createData}
},
UpdateExpression:
“SET status = if_not_exists(status, :val)”,
ExpressionAttributeValues :{
“:val” : {S: stat}
},
ReturnValues: “ALL_NEW”,
};

await updateItem(params);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...