在nodejs中挂起一段时间后的http连接
Hang up the http connection after some duration in nodejs
我需要写一个程序从nodejs中的一些现有服务中获得一些json数据。但是,通过注意我的应用程序中的实时条件,我需要确保答案准备时间不会超过2秒。在那段时间之后,我想切断已经建立的连接,并从我自己的数据库中给客户端我的数据。我已经搜索了很多,但我发现的唯一的事情是设置超时的套接字在http。请求如下:
var options = { ... }
var req = http.request(options, function(res) {
// Usual stuff: on(data), on(end), chunks, etc...
}
/* This does not work TOO MUCH... sometimes the socket is not ready (undefined) expecially on rapid sequences of requests */
req.socket.setTimeout(myTimeout);
req.socket.on('timeout', function() {
req.abort();
});
以上代码只会在服务器不可达或无法联系时执行。但我的问题是强迫连接关闭。有人知道吗?
尝试一下请求模块。它非常适合这样的内容:
var request = require('request');
request({
method: 'GET',
uri: 'http://www.example.com',
timeout: 2000,
}, (err, response, body) => {
if (err) {
return console.error(err);
}
console.log(response);
});
相关文章:
- Node.js HTTP/NET——连接和请求之间的区别
- HTTP 或 HTTPS 根据当前连接
- 当使用HTTP/2时,缩小和连接JS/CSS文件,以及使用精灵进行图像处理仍然可以提供性能优势
- 连接$http.post请求
- 无法连接到网络服务器.验证 Web 服务器是否正在运行,并且传入的 http 请求未被防火墙阻止
- 尝试连接 AngularJS $http时出现 mongodb 服务器错误
- 在 Node 中,创建具有“等待连接”超时的 http 连接的好方法是什么
- Node Js不会通过http连接,但会通过https连接
- https连接中加载的Http内容
- 如何使用nodejs连接到代理服务器并通过代理进行http.request
- 错误连接拒绝http://localhost:3000/socket.io/socket.io.js.
- 对丢弃的http连接进行重复处理
- 在nodejs中挂起一段时间后的http连接
- 连接到我的Visual Studio在线API返回HTTP 302
- 为什么websocket连接创建不通过http
- 并行http get请求在node.js应用程序完成后得到连接
- 用于持久连接的HTTP分块的替代方案
- 限制从家庭网络上的grunt web服务器到远程托管web服务器的http://连接的正确CORS条目是什么?
- 在AngularJS中为$http设置一个服务或工厂来连接REST API的最佳实践
- 使用HTTP连接客户端到Node.js服务器