やること
- Lambdaに、
AmazonDynamoDBFullAccess
PolicyをAttachしたRoleを設定(IAMから設定) - AWSSDKの
AWS.DynamoDB.DocumentClient
を利用してPut-
AWS.DynamoDB
は使わない!(DynamoDB特有の書き方をしないといけなくなる。例えば、MapのListを保存しようと思った時には。。。)- 特有の書き方、例えばこんなの
'user_id': {'N': '12345'}
- 特有の書き方、例えばこんなの
-
サンプル
const aws = require('./node_modules/aws-sdk');
const docClient = new aws.DynamoDB.DocumentClient();
const userInfo = {
basic: {
name: 'taro',
age: 21,
career: ['HOGE株式会社', 'HOGE2株式会社']
},
social: {
twitter: 'https://hogehoge.twitter.com',
facebook: 'https://hogehoge.facebook.com'
}
}
const params = {
TableName: 'user_sessions',
Item: {
user_id: 12345,
last_accessed_at: (new Date()).getTime(),
user_info: userInfo
}
};
docClient.put(params, function(err, data) {
if (err){
console.log(err);
} else {
console.log(data);
}
});