所以我试图将记录放入AWS lambda函数的DynamoDB表中。我已经设置lambda函数的角色来访问lambda函数。但是,在下面的所有example code from the dynamo documentation中都没有引用标识符/ arn。是不是需要一个,而是从lambda函数使用的IAM角色推断出要使用的特定dynamoDB实例?
基本上,我的问题是所有代码如何能够自动调用new AWS.DynamoDB(...)
和'知道正确的数据库来访问/修改?
示例代码:
var table = new AWS.DynamoDB({apiVersion: '2012-08-10', params: {TableName: 'MY_TABLE'}});
var key = 'UNIQUE_KEY_ID';
// Write the item to the table
var itemParams = {
Item: {
id: {S: key},
data: {S: 'data'}
}
};
table.putItem(itemParams, function() {
// Read the item from the table
table.getItem({Key: {id: {S: key}}}, function(err, data) {
console.log(data.Item); // print the item data
});
});
答案 0 :(得分:1)
您需要指定表名和区域。
不需要一个,而是使用特定的dynamoDB实例 是从lambda函数使用的IAM角色推断的吗?
AWS SDK配置提供帐户和区域。这些信息与表名相结合,是连接到表所需的一切。在这种情况下,我相信IAM角色提供了帐户信息,并且您已指定了表名。您可能还需要根据表是否在默认区域中指定区域。