javascript - 使用 Node js 请求模块发出同步请求

标签 javascript node.js request

我有一个 url 数组,并且想在 forEach 循环中使用 Node js 请求模块请求每个 URL,因为有大量请求,我想逐个执行每个主题,但因为请求模块是异步的执行所有主题,我怎样才能强制它一一请求

最佳答案

您还可以使用async模块进行eachSeries迭代

安装

npm install async --save

代码示例

var async = require('async')
var urls = [ 'http://example1.com', 'http://example2.com' ]

async.eachSeries(urls, function (url, next) {
  request(url, function (e, r, b) {
    if (e) next(e) // handle error

    // i'm done, go to the next one!
    next() 
  })
}, onFinished)

function onFinished (err) {
  // I finished all the urls
}

关于javascript - 使用 Node js 请求模块发出同步请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31731599/

相关文章:

javascript - 需要更好的 Node.js http.get 请求错误处理

javascript - 如何访问此对象的属性?

node.js - Node 请求 ISO-8859-1 从 Node 4 开始不工作

javascript - 为什么不推荐使用 fstat

javascript - 通过 AJAX 将 session 变量传递给 PHP 文件

javascript - Angular 使用纯 javascript

javascript - IE9 是否按文档顺序加载 SVG dom?

node.js - 使用 Node.js 和 React 将视频从 AWS 流式传输到网页上

asp.net - 访问服务器上使用 WebClient.UploadData 发送的确切数据

node.js - 在 "request"中调用模块的本地函数作为回调