Не удается прочитать элемент из таблицы DynamoDB с помощью SDK docClient узла DynamoDB - PullRequest
1 голос
/ 16 февраля 2020

Я новичок в DynamoDB docClient для узла. Я пытаюсь сделать простой вызов элемента, но он выдает эту ошибку

The provided key element does not match the schema

Ссылка, по которой я перехожу https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GettingStarted.NodeJs.03.html#GettingStarted. NodeJs .03.02

Вот мой код

const id = req.params; //value is 83166ce1-b36b-4074-b586-e2468346eb03
const docClient = new AWS.DynamoDB.DocumentClient();

const params = {
  TableName: 'users',
  Key: {
    'id': id,
  }
};

docClient.get(params, function(err, data) {
  if (err) {
    console.log(err);
    res.status(500).send("Error fetching user item from DB");
  } else {
    res.status(200).json(data.promoCredits);
  }
});

Вот моя конфигурация таблицы Конфигурация таблицы

Мои товары

Элементы в таблице

Я пытался Google, но я не могу найти ответ на этот вопрос. В настоящее время я возвращаю всех своих пользователей и вручную фильтрую, но это не оптимальное решение. Пожалуйста помоги.

При выполнении такого запроса

http://localhost:8081/api/user/getPromoCredits/83166ce1-b36b-4074-b586-e2468346eb03

моя конфигурация конечной точки

app.get('/api/user/getPromoCredits/:id', user.getUserPromoCredits);

Спасибо

1 Ответ

0 голосов
/ 16 февраля 2020

Это была проблема, когда я не деконструировал свой идентификатор, а идентификатор имел тип Object. Основываясь на двух комментариях выше, большое спасибо за вашу помощь ...

Обновлено до

const { id } = req.params;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...