Столкнувшаяся проблема: сканирование динамо БД - PullRequest
0 голосов
/ 28 сентября 2018

Я создал apis в nodejs для сканирования и запроса таблицы DynamoDB (содержит записи по 70 КБ).Я застрял с сканирования API.У меня есть два API для сканирования - 1. Сканирование таблицы с лимитом 500 - получение правильного ответа 2. Сканирование таблицы без каких-либо ограничений - код ответа 403

И если я вызываю тот же запрос без каких-либо ограничений черезcli, получаю полный ответ.

Не понимаю, в чем проблема.

api.get('/deviceData', function (request) { // GET all users
  return dynamoDb.scan({ 
        TableName: 'student', 
        Limit: 500
    }).promise()
      .then(response => response.Items);
});

api.get('/deviceData-scan', function (request) { // GET all users
  return dynamoDb.scan({ 
        TableName: 'student'
    }).promise()
      .then(response => response.Items);
});

1 Ответ

0 голосов
/ 29 сентября 2018

Пожалуйста, проверьте, как использовать scan multiple time, это поможет вам.

function getData() {
    let params = {
      TableName: 'student'
    };
    let finalResult = [];
      let queryExecute = function () {
        documentClient.scan(params, function (err, result) {
          if (err) {
            console.log('failure', err);
          } else {
            finalResult = finalResult.concat(result.Items);
            // check if more data exists.
            if (result.LastEvaluatedKey) {
              params.ExclusiveStartKey = result.LastEvaluatedKey;
              queryExecute();
            } else {
              console.log('all data', finalResult);
            }
          }
        });
      };
      queryExecute();
  },
...