1. ホーム
  2. java

[解決済み] Retrofit 2ですべてのリクエストにヘッダを追加する

2022-04-27 09:23:33

質問

Retrofit 2のドキュメント と書かれています。

すべてのリクエストに追加する必要があるヘッダは、 OkHttp インターセプタを使用して指定することができます。

前のバージョンを使って簡単にできます。 ここで 関連するQAをご覧ください。

しかし、retrofit 2を使うと、以下のようなものが見つかりませんでした。 setRequestInterceptor または setInterceptor メソッドに適用することができます。 Retrofit.Builder オブジェクトを作成します。

また RequestInterceptor OkHttp になった。Retrofitのドキュメントでは インターセプター というのは、この目的のためにどう使うのかよくわからなかったからです。

どうすればいいのでしょうか?

どのように解決するのですか?

OkHttpClient.Builder httpClient = new OkHttpClient.Builder();

httpClient.addInterceptor(new Interceptor() {
    @Override
    public Response intercept(Chain chain) throws IOException {
        Request request = chain.request().newBuilder().addHeader("parameter", "value").build();
        return chain.proceed(request);
    }
});
Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create()).baseUrl(url).client(httpClient.build()).build();