依赖:
implementation 'com.squareup.okhttp3:okhttp:3.9.+'
或者去获取最新OkHttp版本
应用拦截器
/**
* 自定义一个拦截器,每次请求之前携带公共参数
*
* 应用层
*
*/
public class CommonParamsInterceptor implements Interceptor {
@Override
public Response intercept(Chain chain) throws IOException {
//得到原始的请求对象
Request request = chain.request();
//得到用户所使用的请求方式
String method = request.method();
if("GET".equals(method)){
//url
//原始的请求接口
String oldUrl = request.url().toString();
//拼接成一个新的URL
String newUrl = oldUrl + "&source=android";
//重新构建请求体
request = new Request.Builder()
.url(newUrl)
.build();
}else if("POST".equals(method)){
//得到原始的url
String oldUrl = request.url().toString();
//得到原有的请求参数
FormBody oldBody = (FormBody) request.body();//1 2 3
//新的构建项
FormBody.Builder builder = new FormBody.Builder();
for (int i =0 ; i < oldBody