Eri*_*onn 19 node.js amazon-dynamodb aws-lambda
我正在尝试从AWS Lambda设置一个小的api到DynamoDB,我无法弄清楚是否以及如何将对象数组写入密钥.
我有一个像这样的对象
{
"teamName": "Team Awesome",
"members": [
{
"email": "person-1@example.com",
"name": "Bob"
},
{
"email": "person-2@example.com",
"name": "Alice"
}
]
}
Run Code Online (Sandbox Code Playgroud)
成员数组给了我一些问题,在文档中它看起来可以考虑列表类型来完成,但是没有例子如何做到这一点,并且我没有办法尝试它.
那么可以用这种格式写一些东西吗?在这种情况下你怎么做呢?
示例代码 - 我该怎么做?
var AWS = require('aws-sdk');
var dynamodb = new AWS.DynamoDB();
exports.handler = function(event, context) {
var tableName = "GDCCompetition";
var datetime = new Date().getTime().toString();
DynamoDB.putItem({
"TableName": tableName,
"Item": {
"datetime": {
"N": datetime
},
"teamName": {
"S": event.teamName
},
"members": ???
}
});
}
Run Code Online (Sandbox Code Playgroud)
Vse*_*nin 31
文档并不是很明显,但是有一个叫做的东西DocClient,你可以将一个普通的JS对象传递给它,它将完成所有解析和转换到AWS对象(包含所有类型).你可以像这样使用它:
var AWS = require("aws-sdk");
var DynamoDB = new AWS.DynamoDB.DocumentClient();
var params = {
TableName: "MyTable",
Item: {
"teamName": "Team Awesome",
"members": [
{
"email": "person-1@example.com",
"name": "Bob"
},
{
"email": "person-2@example.com",
"name": "Alice"
}
]
}
};
DynamoDB.put(params, function (err) {
if (err) {
return throw err;
}
//this is put
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11187 次 |
| 最近记录: |