【发布时间】:2019-05-05 23:37:44
【问题描述】:
我将 DynamoDB Put 请求包装到异步函数中。
async function putter(param1, param2) {
const paramsPut = {
TableName: MyTableName,
Item: {
"hashKey": param1,
"sortKey": param2,
}
};
dynamodb.put(paramsPut, function(err, data) {
if (err) {
console.log("Failure")
console.log(data)
return data
}
else {
console.log("Success")
console.log(data)
return data
}
});
};
异步函数的返回被放置在响应函数中 - 这应该在执行 put 操作(成功或不成功)时返回一个承诺。
然后我从另一个异步函数调用这个异步 put 函数:
var param1 = "50";
var param2 = "60";
async function main() {
await putter(param1 , param2)
console.log("Feedback received")
}
当我调用这个 aysnc 主函数时,我希望它在写入“收到的反馈”之前从 put 函数提供 Success 语句,因为它应该等待 put 函数响应。
但是我的控制台记录 “收到的反馈” 之前 在 put async 函数中记录 "Success" 语句,我 正在等待。
我在这里缺少什么?感谢您的支持!
【问题讨论】:
-
能否分享修改后的完整代码(工作代码)
-
请分享代码以从 dynamodb 获取数据。
标签: async-await amazon-dynamodb