使用 DynamoDB 和 docClient,是否可以在使用 transactWrite 时获取返回值?

VDo*_*Dog 5 amazon-web-services amazon-dynamodb aws-sdk

假设我正在进行更新和删除:

const transactionParams = {
    ReturnConsumedCapacity: "INDEXES",
    TransactItems: [
      {
        Delete: {
          TableName: reactionTableName,
          Key: {
            "SOME_PK_",
            "SOME_SK_",
          },
          ReturnValues: 'ALL_OLD',
        },
      },
      {
        Update: {
          TableName: reviewTableName,
          Key: { PK: "SOME_PK", SK: "SOME_SK" },
          ReturnValues: 'ALL_OLD',
        },
      },
    ],
  };

  try {
    const result = await docClient.transactWrite(transactionParams).promise();
  } catch (error) {
    context.done(error, null);
  }
Run Code Online (Sandbox Code Playgroud)

尽管我使用的ReturnValues是“ALL_OLD”,但我似乎无法访问它。transactWrite 是否可以做到这一点,或者我是否需要做一个获取并读完一本书?

Jay*_*ini -2

await docClient.transactWrite(transactWriteItemsQueryParam, (err, data) => {
        if (err) {
          console.error('Transaction Failed. Error JSON:', JSON.stringify(err, null, 2));
          reject(err);
        } else {
          console.log('Transaction succeeded:', JSON.stringify(data, null, 2));
            //data[0].Items -is result of delete query
            //data[1].Items -is result of update query
          resolve(data);
        }
      });
Run Code Online (Sandbox Code Playgroud)