問題タブ [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.
java - サポートされていない操作: Android、Retrofit、OkHttp。OkHttpClient にインターセプターを追加する
インターセプターを使用して、Android で Retrofit 2.0-beta3 および OkHttpClient を介してトークン ベースの認証を追加しようとしています。しかし、OkHttpClient にインターセプターを追加すると、UnsupportedOperationException が発生します。ここに私のコードがあります: ApiClient.java
そして、私はそれを次のように使用します:
しかし、私はこのエラーが発生します:
新しいインターセプターを追加すると、modifiableCollection ではないというエラーが表示されますが、interceptors() 関数のドキュメントには次のように記載されています。
私は何を間違っていますか?バグでしょうか?
android - retrofit2 の API ごとのインターセプター
4 つの異なる API があり、それぞれに独自のヘッダーがあります。各呼び出しに同じヘッダーを与える代わりに、ヘッダーを埋めるためにインターセプターメカニズムを使用しようとしましたが、OkHttpインターセプターはすべてのリクエストに対して実行されるため、APIごとにインターセプターを作成できません。
Retrofit2 には、すべてのリクエストに対して同じヘッダーを作成することを回避できる他のメカニズムは見つかりませんでした。
一連の呼び出しに同じヘッダーを与える良い方法は何でしょうか?
android - スプラッシュ画面で Retrofit を使用した API 呼び出し
私はAndroid開発にまったく慣れていません。RetrofitとRxJavaを使用してRest Apiから非常に大きなレコードを呼び出し、スプラッシュ画面のロード中にローカルデータベースに保存するアプリケーションがあります。スプラッシュ スクリーンの読み込みと終了に 5 分以上かかるため、ユーザー エクスペリエンスが非常に煩わしくなります。スプラッシュ画面をロードする前に、いつでもRest Apiを呼び出すアイデアはありますか? メイン画面では、ローカルデータベースに保存するデータが必要です。
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 パラメータを無視しているようです。これの何が問題なのですか?
java - Retrofit 2.0 と新しい MockRetrofit クラスでサービスをモックする方法は?
Retrofit 1 を使用して、次のように Web サービスをモックし、ネットワーク遅延をシミュレートしていました。
はサービス インターフェイス (Rx ObservablesMyService
として応答を返す) であり、MyServiceMock
このインターフェイスを実装するクラスです。
Retrofit 2.0.0-beta3 には、まだ文書化されていない真新しいモック システム ( https://github.com/square/retrofit/pull/1343を参照) があります。似たようなことをしようとすると、次のようになります。
に電話を転送するにはどうすればよいMyServiceMock
ですか?
android - 同じ接続プールで複数の OkHttp3 クライアントを作成する
Retrofit2を使用しています。複数の OkHttp3 クライアントを作成して、最初のインスタンスの接続プールを他のクライアントと共有できますか? それはスレッドセーフで良い習慣ですか?