我正在使用request包进行发布请求。如何在请求时设置超时500毫秒。
var request = require('request');
request({
url: 'myUrl',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'authToken': 'myToken'
},
timeout: 500,
json: infoObj
})
.on('response', function(response) {
console.log('request response=============',response.statusCode)
})
.on('error', function(err) {
console.log('error===',err);
});
当尝试使用超时时:500,上面的例子出错
{ Error:ETIMEDOUT at Timeout._onTimeout(F:\gomean\globeone\node_modules\request\request.js:796:17)at tryOnTimeout(timers.js:224:11)at Timer.listOnTimeout(timers.js:198:5)code:'ETIMEDOUT',连接:真的
2条答案
按热度按时间2w3kk1z51#
申请单据:timeout-包含在中止请求之前等待服务器发送响应头(并启动响应体)的毫秒数的整数。
k5ifujac2#
您需要包含一个回调来捕获错误。来自文档:
您可以通过检查err.code中的'ETIMEDOUT'值来检测超时错误。此外,通过检查err.connect属性是否设置为true,可以检测超时是否为连接超时。
举个例子: