AWS.DynamoDB.DocumentClient 未提供放置数据

Dar*_*ryn 6 amazon-web-services node.js amazon-dynamodb

我正在使用 AWS.DynamoDB.DocumentClient 和 Dynamodb 本地(端口 8080)。当我执行 put 时,data回调中的变量是一个空对象。我错过了什么吗?

import * as AWS from "aws-sdk";


AWS.config.update({
  region: "us-west-2",
  endpoint: "http://localhost:8080"
});


const docClient: any = new AWS.DynamoDB.DocumentClient();


const item = {
      someField:    "456",
      other:         "123"
};

const params = {
  TableName: "TableName",
  Item: item
};

docClient.put(params, function(err, data) {
  if (err) console.log(err);
  else console.log(data); // this produces: {}
});
Run Code Online (Sandbox Code Playgroud)

没有错误,并且正在插入\更新该项目 - 但是该data变量是一个空对象。这不应该包含值吗?

谢谢

Mar*_*k B 5

您不要求返回任何值,那么您为什么期望返回任何值?您需要设置适当的参数ReturnConsumedCapacity和/或ReturnItemCollectionMetrics和/或ReturnValues如果您希望在响应中返回任何参数。

  • @MasonG.Zhwiti,我确实这样做了,并最终找到了解决方案。我用谷歌搜索了这个问题,这个答案是一个很好的提示,但没有为 OP 的问题提供具体的解决方案。 (3认同)
  • 那么让 put() 返回插入的对象或其某些属性的正确语法是什么? (2认同)