您需要利用
flatMap操作员在前一个请求完成后调用一个请求:
this.service.getUserInterests().flatMap( (interests) => { let params: URLSearchParams = new URLSearchParams(); params.set('access_token', localStorage.getItem('access_token')); return this.http.get('http://localhost:8080/user/selections', { search: params }).map((res: Response) => res.json()); });订阅此数据流时,您只会收到最后一个请求的结果。
您可以使用该
Observable.forkJoin方法返回两者。这是一个示例:
var obs = this.service.getUserInterests().flatMap( (interests) => { return Observable.forkJoin([ Observable.of(interests), this.service.getUserSelections() ]); });obs.subscribe( (result) => { var interests = result[0]; var selections = result[1]; });


