您的位置:首页 > 理论基础 > 计算机网络

关于okhttp的自定义拦截器

2017-11-22 10:46 302 查看
拦截器大家都很熟悉了,这里我只写自定义的拦截器

创建MyInterceptor继承Interceptor

public class MyInterceptor implements Interceptor {
@Override
public Response intercept(Chain chain) throws IOException {
//获取原始的请求数据
Request orginRequest = chain.request();
//先获取原始的请求参数,然后再拼接起来
FormBody orginBody = (FormBody) orginRequest.body();
FormBody.Builder builder = new FormBody.Builder();
for (int i = 0; i < orginBody.size(); i++) {
String name = orginBody.name(i);
String value = orginBody.value(i);
builder.add(name, value);
}
builder.add("source", "android");
FormBody formBody = builder.build();
Request request = new Request.Builder().url(orginRequest.url()).post(formBody).build();

return chain.proceed(request);

}
}


这是最基本的自定义拦截器,其中”source”, “android”是公共参数,然后将自己要上传的参数拼接到公共参数的后面,就实现了自定义拦截

如果不了解拦截器,可以去http://blog.csdn.net/muyi_amen/article/details/58586823,里面介绍的很详细,我就不多说了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: