首页 > 解决方案 > Nodejs Express 重复 GET 请求

问题描述

我的申请有问题。我有一个在 DynamoDB 上运行的长请求。此扫描需要很长时间,但不断崩溃。GET request在最初启动的查询完成之前,我的服务器每隔 2 分钟就会重新启动一次。这让我的服务器每 2 分钟启动一次查询,直到第一个查询完成并发送回调。

这是我用于扫描的代码行。

if (typeof data.LastEvaluatedKey != "undefined") {
    Array.prototype.push.apply(returnData.Items,data.Items);
    params.ExclusiveStartKey = data.LastEvaluatedKey;
    docClient.scan(params, onScan);              
}else{
    console.log("Scanning complete");
    if(returnData.Items){
        Array.prototype.push.apply(returnData.Items,data.Items);
        callback(null, returnData);
    }else{
        callback(null, data);
    }                    
}

有没有办法阻止这些重复请求?

[15/May/2018:14:26:25 +0000] "GET /scan?{parameters} HTTP/1.1" 

或者我是否需要在加载页面后将所有这些作为 AJAX 请求执行?

谢谢你的帮助!

标签: node.jsexpressamazon-dynamodb

解决方案


Node.js 中请求的默认超时时间为 2 分钟。

如果您的请求需要更多时间,您可以在服务器启动后进行设置:

server.timeout = 300000; // (5 minutes in msecs)

有关更多信息,请查看文档


推荐阅读