【发布时间】:2016-11-10 18:23:34
【问题描述】:
我正在尝试了解如何在 javascript 中处理并发异步请求,您是否知道 axios 的一种方法,即使请求失败也可以获取成功请求的结果?如果没有,您将如何处理这种情况?
var axios = require( 'axios' )
var options = [{
baseURL: 'https://some-base-url'
, url: '/some-path&key=some-key'
, method: 'post'
, data: 'some-data'
}, {
baseURL: 'https://some-base-url'
, url: '/some-path&key=some-key'
, method: 'post'
, data: 'some-other-data'
}, {
baseURL: 'https://some-base-url'
, url: '/some-path&key=WRONG-KEY' // WRONG KEY
, method: 'post'
, data: 'some-other-data'
}]
axios.all([
axios.request(options[ 0 ])
, axios.request(options[ 1 ])
, axios.request(options[ 2 ])
]).then(axios.spread(function (res1, res2, res3) {
// when all requests successful
}))
.catch(function(res) {
// third request was unsuccessful (403) but no way to get
// the results of the two previous successful ones?
console.log( res )
})
【问题讨论】:
标签: javascript asynchronous request axios