我想同时发送一个动态数量的ajax请求,并希望对它们进行回调(即回调最后一个回调),但我使用的是node.js.我发现了一个jquery版本来解决它 Pass in an array of Deferreds to $.when() 但我怎么能在node.js中做到这一点?
由于
答案 0 :(得分:0)
Promise.all获取一系列promise并返回一个Promise of Array。节点获取模块可用于异步发出HTTP请求(AJAX实际上只是指浏览器执行的请求。)
Bluebird是一个nodejs Promise polyfill。
像
这样的东西var fetch = require('node-fetch'),
Promise = require('bluebird');
function fetchUrls(URLs) {
return Promise.all(URLs.map(function (URL) {
return fetch(URL).then(function (response) {
return response.json();
});
}));
}
fetchUrls(['url1','url2']).then(function (data) {
// do stuff with the result data here
});
答案 1 :(得分:0)