- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试使用 XMLHttpRequest 模块在 for 循环中异步调用 REST API。我在 1 个循环中发出 400 个请求,每 100 个请求后等待 1 秒。这在客户端 JavaScript 上运行良好。但是,当我使用相同的模块在 NodeJS 上运行时(它不是本地可用的,我必须从 npmjs 下载),大约 230 个请求后出现此错误。知道是否有另一个模块可以用来更好地处理这种批量 API 请求吗?
Error: connect ETIMEDOUT at TCPConnectWrap.afterConnect [as oncomplete]
最佳答案
我终于找到了解决问题的方法。
使用request模块调用REST API时,需要在options中指定pool变量。这作为maxsockets,它是并发请求处理的声明。
下面为遇到此问题的人发布了示例代码:
有关更多信息,请查看以下帖子: How to use Request js (Node js Module) pools
var separateReqPool = {maxSockets: 20};
var request = require('request');
var url_array = ['url1','url2','url3'];//Array of all the urls to call
async.map(url_array, function(item, callback){
request({url: item, pool: separateReqPool}, function (error, response, body) {
//Do Something with the response
});
}, function(err, results){
console.log(results);
});
}).
catch((err) => {
console.log(err);
});
关于node.js - 错误 : connect ETIMEDOUT at TCPConnectWrap. afterConnect [as oncomplete],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53339823/
我正在尝试使用 XMLHttpRequest 模块在 for 循环中异步调用 REST API。我在 1 个循环中发出 400 个请求,每 100 个请求后等待 1 秒。这在客户端 JavaScrip
我正在尝试通过 dokcer-compose 将 Node 与 mysql 连接。我可以使用工作台访问 mysql,但是当我尝试连接 Node 时出现错误: Error: connect ECONNR
我正在尝试使用 url 链接下载文件,但出现以下错误 throw er; // Unhandled 'error' event Error: connect ECONNREFUSED at expor
我在一个模拟的(facebook/google)策略上运行一些测试但是当我一个一个地运行这些测试时我遇到的问题是它正在运行但是当我同时运行它们时它们在第一次测试后不工作,连接应用程序立即失败。 我尝试
我想访问我保存在 C:/Users/myusername/.aws 中的 AWS 凭证该文件称为凭证,没有任何扩展名,它有我的 aws_access_key_id、aws_secret_access_
我是一名优秀的程序员,十分优秀!