繁体   English   中英

NODE.js Lambda dynamodb documentClient get - 返回的数据不是 [] JSON 格式。 如何返回完整的 JSON 文档数据类型表单 GET

[英]NODE.js Lambda dynamodb documentClient get - returned data is not in [] JSON format. How to return a full JSON document datatype form GET

我是 Node.js/AWS lambda 的新手。我已经成功创建了几个 documentClient QUERY 函数,它们以这种格式返回单个或多个项目 JSON 文档:

[ { "name": "andy", "color": "purple", "snack": "oreos" } ]

当我使用 documentClient GET 并以这种格式取回我的单条记录时,它不能很好地与客户端代码 (apple / ios swift) 配合使用

{ "name": "andy", "color": "purple", "snack": "oreos" }

我很希望我可以更改从 documentClient.get() 返回的格式以包括填充 JSON 文档格式,包括前导和尾随括号.. []

我是 node.js & aws.lambda 和 documentClient 的新手,如果这是一个非常基本的问题,我深表歉意....

在上面的文字中提供

如果我没看错的话,您收到的是 object 而不是数组。 您可以使用扫描 function 来检索结果数组:

var params = {
  TableName : 'Table',
  FilterExpression : 'Year = :this_year',
  ExpressionAttributeValues : {':this_year' : 2015}
};

var documentClient = new AWS.DynamoDB.DocumentClient();

documentClient.scan(params, function(err, data) {
   if (err) console.log(err);
   else console.log(data);
});

或者您可以将结果转换为数组:

const document = await documentClient.get({
  TableName: "table-of-example",
  Key: {
    id: "id-of-example"
  }
});

return [data]

请阅读文档以了解文档 dynamodb sdk 的工作原理: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB/DocumentClient.html#scan-property

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM