我已经在nodejs中创建了api以扫描和查询dynamoDB表(包含70K记录)。 我被扫描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);
});
答案 0 :(得分:0)
请检查如何使用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();
},