2017-04-01 11 views
1

私の記憶装置から2つのものを取り出す必要があります.2つで、Promisesとなります。次に、これらの2つの約束を使って角2のHTTPリクエストを作成する必要があります。しかし、私はこれらのステップを正しく構成する方法を理解することはできません。私はいつもObservable<Observable<Response>>で終わります。複数の約束を解決して角2のHTTPリクエストを送信

let tokenPromise = this.getToken() 
    let registrationTokenPromise = this.getRegistrationToken() 

    Observable.zip(
     tokenPromise, 
     registrationTokenPromise, 
     (token, registrationToken) => { 
      let headers = this.headers(token) 
      return this.http.post(`${this.apiBase}/users/registration-token`, 
       { registration_token: registrationToken }, 
       headers 
      ) 
     }) 

Observable<Response>を受け取るにはどうすればこの問題を解決できますか?

答えて

1

あなたはObservable<Observable<Response>>Observable.zipために戻っObservablehttp.post戻りObservableを得ています。観測の1をアンラップするためには、あなたが一緒に、今私の要求火災を呼び出すsubscribe` Observable.zip

Observable.zip(
     tokenPromise, 
     registrationTokenPromise, 
     (token, registrationToken) => { 
      let headers = this.headers(token) 
      return this.http.post(`${this.apiBase}/users/registration-token`, 
       { registration_token: registrationToken }, 
       headers 
      ) 
     }) 
     .subscribe(response => { 
      //do something with response 
     }) 
+0

はい、私が連鎖してきた2 'へsubscribeにする必要があります。ありがとうございました。 – tolgap

関連する問題