2017-12-02 12 views
-3

私は、角度のあるhttpClientを使ったリアクティブプログラミングについて少し混乱しています。
ここでは何が反応しているのですか?なぜ、httpClientが反応するのですか?

私がリアクションスタイルを知っているのは、データフローが継続しているときに便利です。角度のあるhttpClientでこれを行うことは可能でしょうか?
たとえば、1つの要求をサーバーに送信し、サーバーから複数の応答を連続的に取得します。
また、サーバーからの応答を取得したときにobservableが完了しないため、他のデータを待っていると感じました。

リクエストごとに新しいオブザーバブルを作成していますか?はいの場合は、後で退会する必要がありますか?

+1

あなたがここに四つの異なる質問をしているに出くわしました。 1つの焦点についての質問を明確にすることはできますか? –

+0

はい、私は彼らがお互いに関係していると思います。 –

+0

「なぜhttpClientが反応するのか?」という簡単な答えは? httpリクエストは非同期であり、RxJSが提供するユーティリティの恩恵を受けることができます。 httpClientから返されたデータをどのように使用するかに応じて、オブザーバブルは、プログラムによる方法でサブスクライバに非同期応答を提供する際に非常に役立ちます。 –

答えて

1

一つの例は、私は複数の値を使用しているprogressイベント
参考Angular httpClient Progress Events

http.request(req).subscribe(event => { 
    // Via this API, you get access to the raw event stream. 
    // Look for upload progress events. 
    if (event.type === HttpEventType.UploadProgress) { 
    // This is an upload progress event. Compute and show the % done: 
    const percentDone = Math.round(100 * event.loaded/event.total); 
    console.log(`File is ${percentDone}% uploaded.`); 
    } else if (event instanceof HttpResponse) { 
    console.log('File is completely uploaded!'); 
    } 
}); 
関連する問題