OkHttpClientの読み取りタイムアウトは、一般的ではなく単一の特定の要求に対してのみ変更できますか?OkHttp読み取りタイムアウトを設定しました。 Android
インターセプタで管理しようとしましたが、インターセプタはこの機能を提供していません。
OkHttpClientの読み取りタイムアウトは、一般的ではなく単一の特定の要求に対してのみ変更できますか?OkHttp読み取りタイムアウトを設定しました。 Android
インターセプタで管理しようとしましたが、インターセプタはこの機能を提供していません。
使用OkHttpClient.newBuilder()
を試すことができます。 the official Javadocから:
共有OkHttpClientインスタンスは、newBuilder()でカスタマイズできます。これにより、同じ接続プール、スレッドプール、および構成を共有するクライアントが構築されます。 Builderメソッドを使用して、特定の目的のために派生したクライアントを構成します。
彼らの例では、あなたがしようとしている正確に何をやっているようだ:
OkHttpClient eagerClient = client.newBuilder()
.readTimeout(500, TimeUnit.MILLISECONDS)
.build();
その変更はすべての要求に影響します。 –
@ P.Ilyinいいえ、そうではありません。 'eagerClient'(あなたが望むならば、ただ一つのリクエストかもしれません)でやったリクエストは、新しいタイムアウトを使いますが、あなたの既存の' client'で行ったリクエストは影響を受けません。 – nemetroid
これで、別のApi用に別々のOkHttpClientを作成することをお勧めします。 –
あなたは
OkHttpClient client = new OkHttpClient.Builder()
.connectTimeout(10, TimeUnit.SECONDS)
.writeTimeout(10, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.build();
このコードは、アプリケーション全体の要求に対するタイムアウトを無効にします。 –
はStackOverflowのへようこそ!質問を投稿する前に、良い質問をする方法に関するユーザーのガイドラインをお読みください(ありがとうございます) –
これを達成するために使用したいくつかのコードを記入してください、ありがとう。 –
必要なコードが見つかりませんでした –