1
Observableから解決された値を含むデータオブジェクトを構築するときに、Observable<Response>
を返す方法を特定できません。Observablesの値からデータを作成し、HTTP呼び出し後にObservable <Response>を返す方法は?
forkJoin()
を使用して最初に値を解決してからsubscribe
を試して、this.http.post()...
コールを返してみました。ただし、これにより、機能自体にサブスクライブすることはできませんfetchData().subscribe(...)
。私は明らかに何かが欠けている。
解決済みのObservable
値を含むデータオブジェクトを作成し、その後Observable<Response>
オブジェクトを返すにはどうすればよいですか?
// Simplified example
fetchData() {
// Construct the data
var data = {
v1 : this.getValueFromObservable1(),
v2 : this.getValueFromObservable2()
};
// Make the call, return the Observable<Response> object
return this.http
.post('api/authorization', JSON.stringify(data));
}
最後の2行は、ボトルネックを形成し、どのようにすることができます 'this.post(...)' '別名観察可能' 'data'オブジェクトが' 'Observable''データに依存することを知って、返されますか? 'this.http.post(url、fetchData())'のようなものをお勧めしますか? –
Dalie
申し訳ありませんが、私はあなたのコメントを理解していません。アイデアは最初のイベントを待ってから2番目のイベントを待ってからオブジェクトをビルドすることでした。 'zip()'のような良い方法があるかもしれませんが、両方のリクエストが "並列"で実行できますが、私はTSを使わず、rxjs演算子もよく分かりません。 –