gpt4 book ai didi

node.js - NodeJs 中的 DynamoDB putitem - 对象数组

转载 作者:IT老高 更新时间:2023-10-28 22:59:34 26 4
gpt4 key购买 nike

我正在尝试设置一个从 AWS Lambda 到 DynamoDB 的小型 api,但我无法确定是否以及如何将对象数组写入键。

我有一个类似的对象

{
"teamName": "Team Awesome",
"members": [
{
"email": "person-1@example.com",
"name": "Bob"
},
{
"email": "person-2@example.com",
"name": "Alice"
}
]
}

成员数组给我带来了问题,在文档中,考虑到列表类型,它看起来可以完成,但是没有示例如何做到这一点,而且我已经没有办法尝试了。

那么有没有可能以这种格式写一些东西,在这种情况下你是怎么做的?

示例代码 - 我该放什么???

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": ???
}
});
}

最佳答案

文档不是很明显,但是有一个叫做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
});

关于node.js - NodeJs 中的 DynamoDB putitem - 对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33342434/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com