問題タブ [retrofit2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
15963 参照

java - サポートされていない操作: Android、Retrofit、OkHttp。OkHttpClient にインターセプターを追加する

インターセプターを使用して、Android で Retrofit 2.0-beta3 および OkHttpClient を介してトークン ベースの認証を追加しようとしています。しかし、OkHttpClient にインターセプターを追加すると、UnsupportedOperationException が発生します。ここに私のコードがあります: ApiClient.java

そして、私はそれを次のように使用します:

しかし、私はこのエラーが発生します:

新しいインターセプターを追加すると、modifiableCollection ではないというエラーが表示されますが、interceptors() 関数のドキュメントには次のように記載されています。

私は何を間違っていますか?バグでしょうか?

0 投票する
1 に答える
536 参照

android - retrofit2 の API ごとのインターセプター

4 つの異なる API があり、それぞれに独自のヘッダーがあります。各呼び出しに同じヘッダーを与える代わりに、ヘッダーを埋めるためにインターセプターメカニズムを使用しようとしましたが、OkHttpインターセプターはすべてのリクエストに対して実行されるため、APIごとにインターセプターを作成できません。

Retrofit2 には、すべてのリクエストに対して同じヘッダーを作成することを回避できる他のメカニズムは見つかりませんでした。

一連の呼び出しに同じヘッダーを与える良い方法は何でしょうか?

0 投票する
1 に答える
1348 参照

android - スプラッシュ画面で Retrofit を使用した API 呼び出し

私はAndroid開発にまったく慣れていません。RetrofitとRxJavaを使用してRest Apiから非常に大きなレコードを呼び出し、スプラッシュ画面のロード中にローカルデータベースに保存するアプリケーションがあります。スプラッシュ スクリーンの読み込みと終了に 5 分以上かかるため、ユーザー エクスペリエンスが非常に煩わしくなります。スプラッシュ画面をロードする前に、いつでもRest Apiを呼び出すアイデアはありますか? メイン画面では、ローカルデータベースに保存するデータが必要です。

0 投票する
1 に答える
1251 参照

android - Retrofitを使用してクエリ文字列パラメータでリクエストを行う方法は?

次のような URL を持つ api メソッドがあります: http://api.website.com/app.php?action=SOMETHING&id=SOME_NUMBER

各リクエストで変更される唯一の部分は、SOME_NUMBER を置き換える ID クエリ文字列です (例: http://api.website.com/app.php?action=SOMETHING&id=556 )。

私はこのようなサービスを作成しています:

そして、ファクトリ クラスを使用してサービスのインスタンスを返します。

ただし、リクエストは @Query パラメータを無視しているようです。これの何が問題なのですか?

0 投票する
1 に答える
14671 参照

java - Retrofit 2.0 と新しい MockRetrofit クラスでサービスをモックする方法は?

Retrofit 1 を使用して、次のように Web サービスをモックし、ネットワーク遅延をシミュレートしていました。

はサービス インターフェイス (Rx ObservablesMyServiceとして応答を返す) であり、MyServiceMockこのインターフェイスを実装するクラスです。

Retrofit 2.0.0-beta3 には、まだ文書化されていない真新しいモック システム ( https://github.com/square/retrofit/pull/1343を参照) があります。似たようなことをしようとすると、次のようになります。

に電話を転送するにはどうすればよいMyServiceMockですか?

0 投票する
1 に答える
2567 参照

android - 同じ接続プールで複数の OkHttp3 クライアントを作成する

Retrofit2を使用しています。複数の OkHttp3 クライアントを作成して、最初のインスタンスの接続プールを他のクライアントと共有できますか? それはスレッドセーフで良い習慣ですか?