美文网首页
Retrofit,Okhttp对每个Request统一动态添加h

Retrofit,Okhttp对每个Request统一动态添加h

作者: 一叶书生 | 来源:发表于2020-10-12 16:03 被阅读0次

原文:https://blog.csdn.net/sk719887916/article/details/52189602

添加统一通用header, 不会覆盖前面的header

okHttpClient.interceptors().add(new Interceptor() {

    @Override

    public Response intercept(Interceptor.Chain chain) throws IOException {

        Request original = chain.request();

        // Request customization: add request headers

        Request.Builder requestBuilder = original.newBuilder()

                    .addHeader("header-key", "value1")

                    .addHeader("header-key", "value2");

        Request request = requestBuilder.build();

        return chain.proceed(request);

    }

});

添加统一通用header, 会覆盖前面的header

okHttpClient.interceptors().add(new Interceptor() {

    @Override

    public Response intercept(Interceptor.Chain chain) throws IOException {

        Request original = chain.request();

        // Request customization: add request headers

        Request.Builder requestBuilder = original.newBuilder()

                .header("headerkey", "header-value"); // <-- this is the important line

        Request request = requestBuilder.build();

        return chain.proceed(request);

    }

});

统一添加参数

OkHttpClient.Builder httpClient =

    new OkHttpClient.Builder();

httpClient.addInterceptor(new Interceptor() { 

    @Override

    public Response intercept(Chain chain) throws IOException {

        Request original = chain.request();

        HttpUrl originalHttpUrl = original.url();

        HttpUrl url = originalHttpUrl.newBuilder()

                .addQueryParameter("apikey", "your-actual-api-key")

                .build();

        // Request customization: add request headers

        Request.Builder requestBuilder = original.newBuilder()

                .url(url);

        Request request = requestBuilder.build();

        return chain.proceed(request);

    }

});

相关文章

网友评论

      本文标题:Retrofit,Okhttp对每个Request统一动态添加h

      本文链接:https://www.haomeiwen.com/subject/irfppktx.html