2017-10-18 20 views
0

Httpリクエストの結果を使用して別のHttpリクエストを作成する方法を理解できません。例をあげてみましょう。 まず私は、このAPIからデータを取得:角4のHttpチェーンのリクエスト

[{"id": 1}] 

は、第二に、私は別のAPIからデータを取得し、その結果必要がありますが、次のとおりです。

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

だから私は、私は"id labore ex et quam laborum"を投稿すべき最初のデータid =1場合は、APIをチェックする必要があります。私は何かアドバイスを受けて開いています。ありがとう

+0

あなたの質問は明確ではありません...私が理解する限り、あなたは名前で2番目のIDを要求したいと思います:http:// http request、response is> id:1、right? – Amit

+0

はい最初のapi結果は1です。次に、 "id labore ex et quam laborum"を投稿する必要があります。 – Ryoush

+0

this.http.get(url).subscribe((data)=> if(data.id == 1)これを試してください。 http.post(url、data)) – Amit

答えて

1

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についての詳細を見つけることができます。

関連する問題