顺序http请求角4

时间:2017-09-20 02:17:21

标签: angular

我正在尝试以角度4执行顺序http请求。我有一个http请求,它返回一个Observable对象,如下所示:

repos$: Observable<Repo[]>;
this.repos$ = this.candidateService.getCandidateList(); // this method performs the http request

getCandidateList(){
this.http.get<Repo[]>('https://api.github.com/user/repos', {headers});
}

每个返回的Repo对象都包含一个名为subscribers_url的字段,我需要提取并执行GET请求。有没有办法做到这一点?我尝试过使用mergeMap但它似乎没有用。

编辑:

  interface Repo {
  name: string;
  url: string;
  full_name: string;
  subscribers_url: string;
}

2 个答案:

答案 0 :(得分:0)

我认为你可以遍历返回的repos列表,并点击另一个调用传递每个repo的url,如下所示:

repos$.subscribe({
  repo => {
     for(var i = 0; i < repo.length; i++){
         this.dynamicGetRequest(repo[i].url).subscribe({
                 res=>console.log(res);
             })
     }
   }
});


dynamicGetRequest(url) {
   this.http.get<any>(url, {headers});
}

答案 1 :(得分:0)

尝试这个

generateIDNumber()