Я новичок в асинхронных функциях и обещаниях.Я написал лямбда-функцию, которая запрашивает таблицу DynamoDB и возвращает результат.Код выполняется внутри блока успешного завершения обратного вызова, и я вижу ответ в журнале из строки console.log (res).Однако лямбда-ответ всегда отображается как ноль, то есть объект ответа ниже не возвращается вообще.Я смог сделать эту работу, используя функцию синхронного лямбда, используя обратный вызов для возврата данных.Подскажите, пожалуйста, что я могу делать неправильно.
const doc = require('dynamodb-doc');
var dynamodbclient;
const tablename = process.env.TABLE_NAME;
exports.handler = async(event) => {
if (!dynamodbclient) {
dynamodbclient = new doc.DynamoDB();
}
let id = event.params.id;
let queryparams = {
TableName: 'table-name',
Key: { id: id }
};[![enter image description here][1]][1]
var getItemsCallback = (err, res) => {
console.log('inside');
if (err) {
}
else {
console.log('success');
console.log(res);
const response = {
statusCode: 200,
body: JSON.stringify('Hello from Lambda!'),
};
return response;
}
};
var item = await dynamodbclient.getItem(queryparams, getItemsCallback).promise();
};