Лямбда дает ожидаемый результат только тогда, когда я передаю значение вручную (Id = '011010').
В функции шага значение идентификатора значения будет случайным на основе логики предыдущего шага, поскольку значение идентификатора не является статическим, как обрабатывать этот сценарий ExpressionAttributeValues
Я попробовал весь приведенный ниже синтаксис, но безуспешно ..
ExpressionAttributeValues: { ':value': $.External.Id}
ExpressionAttributeValues: { ':value': External.Id.$}
ExpressionAttributeValues: { ':value': $.Id}
ExpressionAttributeValues: { ':value': Id.$}
ExpressionAttributeValues: { ':value': event.Id}
Лямбда-код
'use strict'
const AWS = require('aws-sdk');
const docClient = new AWS.DynamoDB.DocumentClient();
var params = {
TableName: 'temptable',
IndexName: 'Id-CurrentStatus-index',
KeyConditionExpression: '#Id= :value',
ExpressionAttributeNames: { '#Id': 'Id'},
ExpressionAttributeValues: { ':value': 'M1' }
};
async function queryItems(){
try {
const data = await docClient.query(params).promise()
return data
} catch (err) {
return err
}
}
exports.handler = async (event, context) => {
try {
const data = await queryItems()
return { body: JSON.stringify(data) }
} catch (err) {
return { error: err }
}
}
Я могу прочитать это из
console.log("Memberid :" + JSON.stringify(event.Id, null, 2))
но как передать то же значение в
ExpressionAttributeValues: { ':value': 'M1' }
Я попробовал приведенный ниже синтаксис. ничего не работает
ExpressionAttributeValues: { ':value': JSON.stringify(event.Id, null, 2) }
ExpressionAttributeValues: { ':value': event.Id}
ExpressionAttributeValues: { ':value': event.Id}
ExpressionAttributeValues: { ':value': Id}
.$
в конец свойства, которое вы пытаетесь просмотреть.ExpressionAttributeValues: { ':value.$': $.External.Id}
- person Jason Wadsworth   schedule 15.05.2021event.Id
, тогдаExpressionAttributeValues: { ':value': event.Id }
должно работать. Если нет, не могли бы вы предоставить дополнительную информацию? Какую ошибку вы получаете? Как выглядит определение таблицы? Некоторые образцы данных были бы полезны. - person Jason Wadsworth   schedule 17.05.2021