サムネイルフィールドでJS 用の aws-sdk バージョン 3 をStandard JSON
使用DynamoDB
して登録しようとしています。
バージョン 2 ではメソッドの使用が許可されていput
ましたが、バージョン 3 ではコマンドになりましたが、同等のコマンドはありません。
私のコード:
const { DynamoDBClient, PutItemCommand } = require('@aws-sdk/client-dynamodb');
const DynamoDBDocClient = new DynamoDBClient({ region: "us-east-1"});
const item = {
PK: "My_pk",
SK: "My_sk",
username: "My_username",
thumbnail: {
id: "My_id",
width: "My_width",
height: "My_height"
}
}
const params = {
Item: item,
TableName: "My_table"
};
await DynamoDBDocClient.send(new PutItemCommand(params));
エラー:
ERROR TypeError: Cannot read property '0' of undefined
at Object.visit (/var/task/node_modules/@aws-sdk/client-dynamodb/dist/cjs/models/models_0.js:1101:40)
at serializeAws_json1_0AttributeValue (/var/task/node_modules/@aws-sdk/client-dynamodb/dist/cjs/protocols/Aws_json1_0.js:4612:38)
at /var/task/node_modules/@aws-sdk/client-dynamodb/dist/cjs/protocols/Aws_json1_0.js:5514:20
at Array.reduce (<anonymous>)
marshall
アイテムの使用を(から@aws-sdk/util-dynamodb
)登録することしかできませんが、次のように登録しDynamoDB JSON
ます: