Я взял пример кода с самых основ, и я все еще не могу получить одну запись по ключу. Вот мой базовый пример с nodejs (кредиты не включены в этот фрагмент):
var dynamodbClient = new AWS.DynamoDB.DocumentClient();
var params = {
TableName: 'newsarticles',
Key: { id: '068d1110-cd0c-11e8-a4d4-57cb772554a4' }
};
//log full dynamodb request object
console.log("request params: ", JSON.stringify(params));
//make dynamodb request
dynamodbClient.get(params, function(err, data) {
if (err) {
console.log("error: " + err)
} else {
console.log(data.Item);
}
});
запуск этого кода выше примера дает мне следующую ошибку:
ValidationException: предоставленный ключевой элемент не соответствует схеме
мой набор данных легко вставляется, и записи в системе выглядят так:
{
"added": 1539231216801,
"description": "A number of ethics complaints filed against Supreme Court Justice Brett Kavanaugh have yet to be resolved and will be transferred to a new jurisdiction, Chief Justice John Roberts wrote in a letter Wednesday. ",
"edited": 1539231216402,
"id": "068d1110-cd0c-11e8-a4d4-57cb772554a4",
"largeImageUrl": "https://fm.cnbc.com/applications/cnbc.com/resources/img/editorial/2018/10/09/105496148-1539094642099gettyimages-1047769784.1910x1000.jpeg",
"newstitle": "Ethics complaints against Brett Kavanaugh have not been resolved yet",
"newsurl": "https://www.cnbc.com/2018/10/10/ethics-complaints-against-brett-kavanaugh-have-not-been-resolved-yet.html",
"posted": 1539231216402,
"scrapeid": "05c3a690-cd0c-11e8-a4d4-57cb772554a4",
"scrapes": [
"05c3a690-cd0c-11e8-a4d4-57cb772554a4"
],
"source": "www.cnbc.com",
"type": "rate"
}
Таблица определяется следующим образом:
Название таблицы: статьи новостей
Первичный ключ раздела: id (строка)
Первичный ключ сортировки: добавлено (число)
Сообщение об ошибке на самом деле не говорит мне, в чем проблема. Может ли кто-нибудь увидеть, что не так в моем запросе? Есть ли другой способ диагностировать, что может отсутствовать или быть неправильным? Заранее спасибо, извините за вопрос NOOB, но я только начинаю работать с AWS DynamoDB.