6
すでにビルドされているOkHttpリクエストオブジェクトにヘッダを追加したいとします。要求によりnewBuilder()
に電話する必要がありますか? newBuilder()
は何をしますか?その後、ビルドされたOkHttpリクエストオブジェクトにヘッダを追加するには?
すでにビルドされているOkHttpリクエストオブジェクトにヘッダを追加したいとします。要求によりnewBuilder()
に電話する必要がありますか? newBuilder()
は何をしますか?その後、ビルドされたOkHttpリクエストオブジェクトにヘッダを追加するには?
これはRequest
にジャストワンタイムヘッダー挿入の場合は、必ず: request.newBuilder().addHeader("header-name", "value").build();
あなたは、あなたのOkHttpClient
内のすべてのRequest
のためにこれを行うインターセプターを使用する場合:
private static final class AddHeaderInterceptor implements Interceptor {
@Override public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
request = request.newBuilder().addHeader("header-name", "value").build();
return chain.proceed(request);
}
}
newBuilder()が行うことについては、ソースを読んでください。 :) https://github.com/square/okhttp/blob/0ac2471d0678dfa9d535fbb13a546134dc2b3089/okhttp/src/main/java/com/squareup/okhttp/Request.java#L93
ルーク元を読んでください。 https://github.com/square/okhttp/blob/0ac2471d0678dfa9d535fbb13a546134dc2b3089/okhttp/src/main/java/com/squareup/okhttp/Request.java#L93 –
インターセプターが必要なようです。インターセプタでnewBuilder()を使用してヘッダを簡単に挿入できます。 –