我是一個Node.js的服務器爲我創建了一個遊戲的工作。服務器充當api來檢索包括個人高分在內的用戶帳戶信息。我爲每個帳戶都有一個單獨的項目,其中包含他們的用戶名和他們的遊戲分數列表。我似乎無法找到任何示例代碼將值插入到DynamoDB的列表中,我希望有人能幫助我。我沒有找到有關此特定操作的文檔。我只是試圖使用putitem函數,我知道它用於插入字符串和其他數據類型,但我沒有插入列表數據類型的運氣。我最近在這樣的嘗試看起來如下:的Node.js:如何使用putitem添加整數列出瓦特/ DynamoDB
var params = {
TableName : "userscores",
Item:{
"username" : {"S": username},
"scores" : {"L": {"S": score}}
}
}
dynamodb.putItem(params, function(err, data) {
if(err)
console.log(err);
else
console.log(JSON.stringify(data));
});
錯誤看起來是這樣的: {[InvalidParameterType:預期params.Item [「分數」] L到一個數組] 消息:「預期L成爲一個陣列', 代碼:'InvalidParameterType'
我明白爲什麼這個塊不起作用,但我不明白如何做到這一點。 任何幫助將不勝感激!
我試過的THI的第一個版本解決方案,並得到一個錯誤。我的確在嘗試將一個分數變量添加到dynamodb列表中。當我嘗試這個時,我得到的錯誤:{[UnexpectedParameter:在params.Item ['scores']中找到的意外鍵'0'] 消息:'paranex.Item [\'scores \'中找到'意外鍵\'0' 「]」, 代碼:「UnexpectedParameter」, 時間:週三2016年11月30日7點18分55秒格林尼治標準時間0800(太平洋標準時間)} – zdevita
我覺得你有什麼東西從在方案中提到的不同。你能否顯示你的變量和賦值或完整的代碼?無論如何,你有沒有將分數定義爲關鍵字(即排序鍵或散列鍵)?如果是,主鍵屬性必須定義爲字符串,數字或二進制類型。 – notionquest