我正在使用Promises构建一个模块,我在多个 url上进行多次 http 调用,解析响应,然后再次进行更多 http 调用。
c = new RSVP.Promise({urls:[]}) //Passing a list of urls
c.then(http_module1) // Call the http module
.then(parsing_module) // Parsing the responses and extract the hyperlinks
.then(http_module2) // Making http requests on the data produced by the parser before.
.then(print_module) // Prints out the responses.
问题是 - 如果我使用承诺,除非发出所有 http 请求,否则我无法解析模块。这是因为 -Once a promise has been resolved or rejected, it cannot be resolved or rejected again.
构建我自己的承诺版本还是有替代方法?