2017-10-16 15 views
0

httpリクエストが1秒未満で完了した場合にのみ、どのようにしてそのリクエストを遅延させることができますか。角遅延高速HTTPリクエスト

最初のシナリオ: - http要求が300msで完了し、1秒が終了するまで待機します。

第2のシナリオ: - httpリクエストが1秒と300msで完了すると、遅延しません。

これをどのように観測値で達成するか?

+0

気にしますか?答えは以下の通りですが、私は好奇心が強いです。 –

+0

@IgorSoloydenko私たちはHTTPリクエストに問題があり、ローディングアニメーションよりも速いこともありましたが、アニメーションが終了するのを待つのが大丈夫でしたできるだけ早くhttpコールの結果を得ることは非常に重要ではありませんでした。 –

+0

ああ、基本的にUXの問題でした。意味をなさない! –

答えて

5

あなたは完全に両方の観測まで待機するforkJoinを使用することができます:あなたはAPIを呼び出し、それを遅延させるためのシナリオが何であるかを尋ねる

Observable.forkJoin(
    this.http.get(...), 
    Observable.of(null).delay(1000), 
    r => r // Use only the HTTP response 
)) 
.subscribe(); 
+0

Excellent:)!!! – Maxime

+0

ここでは、[Platinum](https://plnkr.co/edit/e2phrWHfrohkKAhYTbwg?p=preview)を使用して、[@ Rachid Oussanaa](https://stackoverflow.com/users/1543885/rachid-オッサナ)。私はまた、速い(300ms)応答と遅い(1300ms)応答で結果を示すために少しベンチマークを追加しました。 – Maxime

関連する問題