如何解决在lamda函数中获取null作为响应,但是未在dynamoDB上插入数据
我是AMS的新手,我将在线上投稿。 我正在尝试将数据插入dynamoDB表用户数据。 授予dynamoDB IAM角色完全访问权限。
我的lambda函数如下所示,
const aws = require("aws-sdk");
const dynamoDB = new aws.DynamoDB();
exports.handler = async (event,context,callback) => {
console.log(event);
const itemData = {
Item : {
"UserId" : {
S : "BasavarajHadimani"
},"Age" : {
N : "26"
},"Height" : {
N : "112"
},"Salary" : {
N : "2500"
}
},TableName : "user-table"
};
dynamoDB.putItem(itemData,function(err,resp){
if(err){
console.log(err)
callback(null,err);
}else{
console.log(resp)
callback(null,resp);
}
})
};
并获得如下响应,
Response:
null
Request ID:"XXXXXXXXXXXX"
Function logs:
START RequestId: XXXXXXXXXX Version: $LATEST
2020-08-22T05:55:47.385Z XXXXXXXXX INFO { key1:
'value1',key2: 'value2',key3: 'value3' }
END RequestId: XXXXXXXXXX
REPORT RequestId: XXXXXXXXXX Duration: 534.92 ms Billed Duration:
600 ms Memory Size: 128 MB Max Memory Used: 87 MB Init Duration: 446.75 ms
解决方法
const aws = require("aws-sdk");
const dynamoDB = new aws.DynamoDB();
exports.handler = function(event,context) {
console.log(event);
const itemData = {
Item : {
"UserId" : {
S : "BasavarajHadimani"
},"Age" : {
N : "26"
},"Height" : {
N : "112"
},"Salary" : {
N : "2500"
}
},TableName : "user-table"
};
dynamoDB.putItem(itemData,function(err,resp){
if(err){
console.log(err)
}else{
console.log(resp)
}
})
};
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。