public class TokenInterceptor implements Interceptor {
@Override
public Response intercept(Chain chain) throws IOException {
Request original = chain.request();
//请求定制:添加请求头
Request.Builder requestBuilder = original.newBuilder();
String access_token = (String)SPHelper.get(BaseApplication.getAppComponent().getContext(),"access_token","");
if(!TextUtils.isEmpty(access_token)){
requestBuilder.addHeader("Authentication", access_token);
}
//请求体定制:统一添加token参数
if (original.body() instanceof FormBody) {
FormBody.Builder newFormBody = new FormBody.Builder();
FormBody oidFormBody = (FormBody) original.body();
for (int i = 0; i < oidFormBody.size(); i++) {
newFormBody.addEncoded(oidFormBody.encodedName(i), oidFormBody.encodedValue(i));
}
// newFormBody.add("Authentication", "222222222222");
requestBuilder.method(original.method(), newFormBody.build());
}
Request request = requestBuilder.build();
return chain.proceed(request);
}
}
笔计:okhttp3 Interceptor 拦截器 请求前
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 开始之前先甩上retrofit和okhttp的github链接:https://github.com/square...
- 在Okhttp3中拦截器分为应用拦截器和网络拦截器,两者有很大的区别,在使用时一定要注意防止用错造成不必要的麻烦,...
- 1.春花秋月:想起以前的春花秋月,她不仅莞尔一笑。 2.垂涎欲滴:看到这一桌子的美味佳肴我早已垂涎欲滴。 3.捶胸...