通过AWS SDK Javascript使用DynamoDB创建GetItem

时间:2016-02-06 04:46:11

标签: javascript aws-sdk

我编写了以下使用DynamoDB的代码:

var qryItem = {
    TableName: 'MyTable',
    Key: {
        UserId: {
            S: '1234567'
        }
    }
};

dynamoDb.getItem(qryItem, function (error, data) {
    console.log(data);
    if(error){
        console.log(error, error.stack);
    }
});

MyTable具有以下属性:

  • UserId(String)主分区键
  • 名称(字符串)主要排序键
  • 电子邮件(字符串)

我已成功执行scan操作,但当我执行上述getItem请求时,会返回以下错误:

ValidationException: The provided key element does not match the schema

非常感谢任何建议。

1 个答案:

答案 0 :(得分:1)

所以是的,一如既往,在传递之前仔细阅读文档。

我在创建表时指定了“排序键”,并且在执行查询时必须将其传入,并且必须填充才能使验证模式全部清除。

所以我的查询参数应该

var qryItem = {
    TableName: 'MyTable',
    Key: {
        UserId: {
            S: '1234567'
        },
        Name: {
            S: 'John Citizen'
        }
    }
};