私はAngularアプリケーションを開発しています。私はソーシャルネットワークの1つで提供されているAPIを使用しており、毎秒5つのAPI呼び出しの制限があります。RxJでインターバルごとにAPIコールの数を制限する方法は?
最も直接的な解決策は、リクエストを数え、制限に合わせてキューに入れるカスタムロジックを書くことです。したがって、6番目のリクエストを1秒以内にAPIに送信すると、1回目のリクエストが送信されてから2番目に送信されます。
しかし、RxJを使用することができれば、わかりやすいソリューションを探したいと思います。
例えば、私は、次の例のように観測ためdebounseTimeを設定することができます。しかし、私が実際に得ているのは、行間に200ミリ秒より短い間隔でリクエストをいくつか行うことができないということです。
this.searchControl.valueChanges
.debounceTime(200) // 200ms ~ 5 requests per second
.switchMap(search => this.api.searchPeople(search))
間隔あたり発するの数を制限した場合のリクエストでそれらをキューすることができます任意の技術があまりにも頻繁に送信されているRxJsていますか?
素晴らしい:私は何が必要ありません、次の演算子を作りました。ありがとう、本当に私が欲しいものです。 –