Javascript forEach-NodeJS内部的Http请求
我有需要通过API上传数据的电子表格。从电子表格中提取数据后,我创建了一个对象并将其放入数组中 我的想法是迭代这个数组,对其中的每个对象发出请求,并使用状态代码显示成功或错误消息。 代码似乎可以处理少量(~200个元素),但当我尝试强调它时(比如3500个元素),行Javascript forEach-NodeJS内部的Http请求,javascript,node.js,ajax,asynchronous,npm,Javascript,Node.js,Ajax,Asynchronous,Npm,我有需要通过API上传数据的电子表格。从电子表格中提取数据后,我创建了一个对象并将其放入数组中 我的想法是迭代这个数组,对其中的每个对象发出请求,并使用状态代码显示成功或错误消息。 代码似乎可以处理少量(~200个元素),但当我尝试强调它时(比如3500个元素),行response.statusCode中断,因为response未定义。我认为异步部分不会有任何问题,因为只有在服务器响应时才会调用回调,但这里的情况似乎不是这样。 为什么我在回调中得到响应未定义 下面是我正在使用的一段代码: arr
response.statusCode
中断,因为response
未定义。我认为异步部分不会有任何问题,因为只有在服务器响应时才会调用回调,但这里的情况似乎不是这样。
为什么我在回调中得到响应未定义
下面是我正在使用的一段代码:
array.forEach(function (element) {
//Configure Request
var options = {
url: 'http://example',
method: 'POST',
headers: headers,
body: element,
json: true
}
request(options, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(response.statusCode);
console.log(body)
} else {
console.log(response.statusCode);
console.log(error)
}
});
});
谢谢 请在async.mapLimit()中运行此代码
您应该使用async.each()
ofasync
库您是否打算一次触发3500个请求,因为您正在这样做?