gpt4 book ai didi

javascript - 如何从 getItem dynamoDB (JavaScript) 检索特定对象?

转载 作者:行者123 更新时间:2023-12-03 00:01:53 25 4
gpt4 key购买 nike

从我的 AWS 数据库获取项目。下面的“test2”作为我的控制台中的项目正确打印。但我想从中获取项目中的属性/变量,并将其作为 var test 返回。我该怎么做呢?例如,如果我想获取属性名称“问题”并返回它?

var test;

ddb.getItem(param, function(err, data1) {
if (err) {
console.log("Error", err);
} else {
var test2 = JSON.stringify(data1);

console.log("Get Success", test2);
test = JSON.stringify(data1, undefined, 1);

}
});
speechOutput = `Ok ${test}. Thanks, I have reported this. Do you have anything else to report?`;

callback(sessionAttributes,
buildSpeechletResponse(cardTitle, speechOutput, repromptText, shouldEndSession));

最佳答案

借助 aws-sdk,您可以使用 SDK 中提供的 Converter 类将 DynamoDB 响应中的项目转换为外观更正常的对象:

因此,如果 data1 如下所示:

const data1 = {
Item: {
"AlbumTitle": {
S: "Songs About Life"
},
"Artist": {
S: "Acme Band"
},
"SongTitle": {
S: "Happy Day"
}
}
}

data1.Item 传递到 unmarshall 函数中,如下所示:

const flat = AWS.DynamoDB.Converter.unmarshall(data1.Item);

现在 flat 看起来像这样:

{
"AlbumTitle": "Songs About Life",
"Artist": "Acme Band",
"SongTitle": "Happy Day"
}

因此您可以像平常一样访问属性:

console.log(flat.Artist) #=> "Acme Band"

关于javascript - 如何从 getItem dynamoDB (JavaScript) 检索特定对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55131957/

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