3
每當發送請求到NodeJS快速服務器需要超過120秒的響應時間時,都會出現請求超時錯誤。當服務器處理請求的時間超過120秒時,節點Express服務器連接超時
我嘗試增加服務器超時與request.setTimeOut(200000);
,但它只適用於從本地主機訪問..並超時通過IP地址。同樣的問題,當運行在一個網站上。
請找我的服務器代碼保持120秒以上的要求:
var express = require('express')
var app = express();
app.set('port', process.env.PORT || 3003);
app.listen(app.get('port'));
app.post('/cmfm', function (req, res) {
req.setTimeout(600000);
//req.socket.setKeepAlive(true,1);
var startTime = (new Date()).getTime();
var response = {};
response.data = 1;
console.log('request starts to process.. ');
setTimeout(function() {
var endTime = (new Date()).getTime();
console.log('Total Time taken to run --> ' + (endTime - startTime));
res.json(response);
}, 180000);
});
客戶端代碼請求服務器:
$.ajax({
url: "/cmfm",
type: "POST",
contentType: "application/json", // content type is must
cache: false,
}).done(function (resultdata) {
alert('timout passed - ' + resultdata.data);
})
.fail(function() {
alert('Timout failed');
});
從
本地主機:3003
它按預期工作。 AJAX做的是後180秒IPADDRESS觸發:3003
它觸發120秒後ajax.fail()恰好沒有完成,setTimeout的回調服務器新生力量。
請幫我解決這個問題。
謝謝..ajax超時不幫我...但現在解決..解決方案 - 剛剛從我的辦公室網絡拔出並通過外部網絡使用數據卡連接。所以,我猜它必須是防火牆/代理問題...進一步我縮小併發布在網絡端完成的確切更改。 – user2749751