복붙노트

[ANGULAR] Angular 2에서 2 개의 종속 HTTP 요청을 만드는 방법

ANGULAR

Angular 2에서 2 개의 종속 HTTP 요청을 만드는 방법

해결법


  1. 1.RXJS 방식은 스위치 맵 연산자를 사용하여 두 번째 요청을 발사하기 전에 첫 번째 요청의 응답을 기다릴 때까지 기다릴 것입니다.

    RXJS 방식은 스위치 맵 연산자를 사용하여 두 번째 요청을 발사하기 전에 첫 번째 요청의 응답을 기다릴 때까지 기다릴 것입니다.

    return this.http.get('url/1')
      .switchMap(res1 => {
        // use res1 to further control param of the second call
        this.http.get('url/2')
      })
      .subscribe(res2 => {
        //do stuff with the second response
      })
    

    병렬로 요청을 수행하려면 (서로 의존하지 않는 요청에 대해서는 요청에 대해) 포크 쌍의 정적 연산자를 사용하십시오.

    return Observable.forkJoin(
      this.http.get('url/1'),
      this.http.get('url/2'),
    )
      .subscribe(([res1, res2]) => {
        // res1 and res2 available after both requests are completed
      })
    
  2. from https://stackoverflow.com/questions/45945846/how-to-make-2-dependent-http-request-in-angular-2 by cc-by-sa and MIT license