我创建了一个lambda函数
console.log('starting function');
const AWS = require('aws-sdk');
const docClient = new AWS.DynamoDB.DocumentClient({region: 'ap-northeast-1'});
exports.handle = function(e, ctx, callback) {
console.log('processing event: %j', e);
var params ={
Item: {
"name":e.name,
"email":e.email
},
TableName:'SignUp'
};
docClient.put(params, function(err,data){
if(err){
callback(err,null);
}else{
callback(null,data);
}
});
}
我在我的api网关上配置了一个post方法,它工作正常,但在我测试之后,我发现只有我定义为我的主键的电子邮件项目填充在我的数据库中,没有名称项和数据。不知道出了什么问题。
答案 0 :(得分:2)
name
是DynamoDB中的保留字:
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html
您应该将其更改为myName
之类的独特内容。