【发布时间】:2017-02-27 02:37:56
【问题描述】:
我有一组承诺(request-promises),它们被包装在另一种方法中,因此如果发现错误,它们将重试 3 次。那部分工作正常。我想使用 promise.all() 因为我最终会有大量的 http 请求。使用我目前使用的方法,promise.all() 在所有重试尝试完成之前仍然调用它回调函数。有没有办法让我在 promise.all() 回调之前等待所有重试尝试完成。
var http_req = require('request-promise')
function My_Http(retries, options)
{
return http_req(options)
.then(data=>{console.log('success')})
.catch(err => {
retries > 0 ? My_Http(retries-1, options) : console.log(err.message)
})
}
var promises = []
promises.push( My_Http(3, options1))
promises.push( My_Http(3, options2))
promise.all(promises).then( data=> {console.log(data)} )
【问题讨论】:
标签: javascript node.js http request promise