我正在嘗試rx.js
,我試圖提出多個http
請求。這裏是我設置的observable
以提出http
請求。如何使用rx.js發送多個http請求?
function httpGet(url) {
return Observable.create(function forEach(observer) {
var cancelled = false;
axios.get(url).then(function(res) {
if(!cancelled) {
observer.onNext(res);
observer.onCompleted();
}
});
return function dispose() {
cancelled = true;
}
})
}
我試圖讓多個http
請求,但我的結果是更Observable
的。這裏是subscribe
:
var array = ['http://localhost:4444/text/88', 'http://localhost:4444/other/77'];
var source = Rx.Observable.fromArray(array).map(httpGet);
var subscription = source.subscribe(
function (x) {
console.log(x);
},
function (err) {
console.log('Error: ' + err);
},
function() {
console.log('Completed');
});
這是我的結果。
AnonymousObservable { source: undefined, __subscribe: [Function: forEach] }
AnonymousObservable { source: undefined, __subscribe: [Function: forEach] }
Completed
我明白,我得到Observable
的,如果我forEach
版通過他們,然後我會得到的結果,但我的思念轉化成data
而不是Observable
這個的正確方法。我究竟做錯了什麼?