新しいレコードをDynamoDBデータベースに「putItem」しようとしていますが、データに配列を含める試みが失敗しています。私params.Itemは、次のようになります。dynamodDB putItem: "UnexpectedParameter:予期しないキー 'L'がparams.Itemに見つかりました"
msg.params.Item = {
fileName: {S: "filename"}, // database is keyed on filename
userEmail: {S: "emailaddress"},
transcription: {S: "text here"},
features: {L: [ { "relevance": {S: "0.900906"}, "text": {S: "keyword"}} ]}
};
私が繰り返しエラーが出る "UnexpectedParameter:params.Item [ '機能']で見つかった予期しないキー 'L'"。私は何とか "フィーチャ"配列を間違ってフォーマットしたと仮定しますが、私のエラーがどこにあるのか分かりません。私は配列の多くの異なる呪文を試した。 DynamoDB putItem javascriptを使用して作業しているオンラインの例は、アレイを使ってごくわずかです。
FYI:Node-REDの中でnode.jsを使用していますが、これは奇数コードを説明しているかもしれませんが、以前はCloudantデータベースでうまく動作していました。 dynamoDBだけがこの配列で窒息しています。
感謝しなければなりません。私はこの変種を試しましたが、エラーメッセージ "UnexpectedParameter:予期しないキー 'L'がparams.Item ['features']"に見つかりました。おそらく、これは私が使用しているdynamoDB Node-REDノードの成果物です(https://github.com/michaelmruta/node-red-contrib-aws-dynamodb/blob/master/dynamodb.html)。 –
@TedBarnettあなたは 'フィーチャー'を除外してアイテムを挿入できますか? – rob
@TedBarnett私はこの銃で銃を飛ばしているかもしれませんが、あなたがリンクしているライブラリが[アイテムをラップしているようです](https://github.com/michaelmruta/node-red-contrib-aws-dynamodb/blob /master/dynamodb.js#L76)。 [npm doc](https://www.npmjs.com/package/dynamodb-data-types#quick-example)によると、通常のデータ構造体を 'attr.wrap()'に渡すことで、DynamoDBが必要とする適切なラベル付けが追加されます。 – rob