Angular 4 Http Chain请求

时间:2017-10-18 07:51:59

标签: angular api http

我无法弄清楚如何使用Http请求的结果来发出另一个Http请求。让我们用例子说清楚; 首先,我从这个api获取数据:

[{"id": 1}]

其次我应该从另一个api获取数据,结果是:

[{"id": 1, "name": "id labore ex et quam laborum", }]

所以我应该检查apiİf的第一个数据id =1然后我应该发布"id labore ex et quam laborum"。我有任何建议。谢谢

1 个答案:

答案 0 :(得分:3)

您可以使用rxjs switchMap运算符。

只需导入它:

import 'rxjs/add/operator/switchMap';

然后像这样使用它:

this.http.get('/api/items').switchMap(data => {
  // do something with your data
  return this.http.get(`https://api.com/${data.id}`); // use it for example in your http request
}).subscribe(data => {
    this.results = data['results'];
});

您可以找到更多相关信息here