问题描述
在一个项目的很多个retorfit接口中,都要带上一些公共的参数用于日志记录、统计分析等,比如设备信息、版本号、包名等参数。
除了在每一个retrofit接口上手动写一遍以外,有没有封装型的写法?
问题解答
回答1:好像自定义OkhttpClient的拦截器可以做得到
回答2:可以添加统一个header
builder.addInterceptor(new Interceptor() {@Overridepublic Response intercept(Chain chain) throws IOException, java.io.IOException { Request request = chain.request().newBuilder() .addHeader('Source', 'android') .addHeader('Accept', 'application/json,text/javascript,*/*') .build(); return chain.proceed(request);} });回答3:
你需要的都在这里 :retrofit的封装
回答4:拦截器是你需要的。