#node.js #amazon-web-services #amazon-dynamodb
#node.js #amazon-веб-сервисы #amazon-dynamodb
Вопрос:
Я хочу получить данные из элемента DynamoDB с помощью лямбда-функции. Однако следующий код всегда возвращает null .
async function getData(userId) {
let documentClient = new AWS.DynamoDB.DocumentClient();
let params = {
TableName: 'mytable',
Key: {
user_id: userId
}
};
let result = await documentClient.get(params).promise();
console.log(result);
return resu<
}
module.exports.handler = async event => {
let test = getData('test');
return { statusCode: 200, body: test };
};
Моя таблица DynamoDB выглядит следующим образом.
Есть идеи?
Комментарии:
1. Разве вам не нужно
await
для вашего getData?, ` let test = await getData(‘test’);`2. Вы правы! Теперь я сделал функцию getData не асинхронной функцией и переместил ожидание из результата в вызов функции getData, и теперь он работает. Большое спасибо! 🙂
3. Нет проблем. Если вы не возражаете, я дам ответ для дальнейшего использования.
Ответ №1:
На основе комментариев.
Решение состояло в том, чтобы await
для getData
:
module.exports.handler = async event => {
let test = await getData('test');
return { statusCode: 200, body: test };
};