我已经部署了Lambda函数,该函数应使用scan(params, cb)
函数获取项目列表。在控制台中,我看到了一些不同的东西,而不是返回的列表,而是类似http请求正文或响应的东西?
您能解释一下如何正确获取列表以及我能得到什么?
exports.handler = async (event, context, callback) => {
console.log('function started')
let params = {
TableName: "documents"
}
console.log('params get')
let respond = await db.scan(params, (err, data) => {
console.log('scan started')
if (err) console.log(err, err.stack);
else {
console.log('else started')
return data
}
})
console.log('Respons IS: ')
console.log(respond)
};
您正在混合callbacks和async/await ES6功能。
我建议您在这种情况下仅使用后者。
这是它的外观:
const aws = require('aws-sdk');
const db = new aws.DynamoDB.DocumentClient();
exports.handler = async (event, context) => {
console.log('function started');
const params = {
TableName: "documents"
};
console.log('params get');
const respond = await db.scan(params).promise();
console.log('Respons IS: ');
console.log(respond);
return ...
};