android改造添加自定义标题 [英] android retrofit add custom header

查看:64
本文介绍了android改造添加自定义标题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用retrofit2并想使用OkHttp3 addInterceptor添加一些标头但不工作

i using retrofit2 and want add some header using OkHttp3 addInterceptor but not working

这是我的代码

OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
    httpClient.addInterceptor(new Interceptor() {
        @Override
        public Response intercept(Chain chain) throws IOException {
            Request original = chain.request();
            Request request = original.newBuilder()
                    .removeHeader("Authorization")
                    .removeHeader("Content-type")
                    .removeHeader("User-Agent")
                    .addHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8")
                    .addHeader("Accept-Language", "en-US")
                    .addHeader("User-Agent", ApiConfig.userAgent)
                    .method(original.method(), original.body())
                    .build();
            return chain.proceed(request);
        }
    });
OkHttpClient client = httpClient.build();

    if (apiInterface == null) {
        Retrofit retrofit = new Retrofit.Builder()
                .baseUrl(ApiConfig.baseUrl)
                .addConverterFactory(GsonConverterFactory.create())
                .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
                .client(client)
                .build();
        apiInterface = retrofit.create(ApiInterface.class);
    }
    return apiInterface;

请帮帮我.亲切的问候

推荐答案

如果有帮助,试试这个

Try this if it helps

RestAdapter.Builder builder = new RestAdapter.Builder()
    .setRequestInterceptor(new RequestInterceptor() {
        @Override
        public void intercept(RequestFacade request) {
            request.addHeader("Accept", "application/json;versions=1");
            if (isUserLoggedIn()) {
                request.addHeader("Authorization", getToken());
            }                    
        }
    });

这篇关于android改造添加自定义标题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆