1

Reactor-core と Spring 5 は、Mono/Flux パブリッシャー用の新しい非同期 WebClient を導入しました。

非同期性を提供するためにRestTemplateリクエストをObservableとsubscribeOnでラップするのは非常に一般的であるため、RxJava用の非同期クライアントがあるかどうか疑問に思っていました。

https://github.com/ReactiveX/RxApacheHttpを見つけましたが、サポートされていないようです。最後のコミットは 2014 年のもので、テストでも機能していません。

4

3 に答える 3

3

Netty ベースのRxNetty ( https://github.com/ReactiveX/RxNetty ) を使用できます。

Netflix リボン ( https://github.com/Netflix/ribbon ) を RxNetty と共に使用することもできます。

于 2016-10-21T15:09:53.190 に答える
1

はい、ありますが、ニーズに合っているかどうかは明確ではありません:

レトロフィット2

応答を取得できるようにするには、ファイルObservableに次を追加します。build.gradle

compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'

あなたが持っている多くのオプションの中で:

Retrofit retrofit = new Retrofit.Builder()
    (...)
    .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
    (...)
    .build();

その後、Retrofitすべての関数のインターフェースであるクラス内でObservable<{class_to_return}>、返されたオブジェクトとして持つことができます:

retrofit.create({interface_class}.class)

インターフェイス クラス (例):

Observable<ApiUser> postLogin({parameters});
于 2016-10-19T09:12:34.430 に答える