来个最简单的最常用的
OkHttp 或者说 OkHttpClient 添加默认参数添加参数
通俗的说就是在你的请求连接自动加上你想加的参数例如
https://aaa.bbb.com?aaa=1212&bb=6787&from=android
from=android 就是你想增加的参数 在每条连接请求都会带上这个参数
使用方式
mOkHttpClient = new OkHttpClient.Builder()
//此处拦截器是打印日子的
.addInterceptor(new HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY))
.readTimeout(DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS)
.connectTimeout(DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS)
//此处添加自定义拦截器
.addInterceptor(new MyInterceptor)
...
参数什么自己拿哈!这只是个例子
拦截器如下
**
* 添加公共参数
* * <p>
*/
public class MyInterceptor implements Interceptor {
@Override
public Response intercept(Interceptor.Chain chain) throws IOException {
Request request = chain.request();
HttpUrl httpUrl = request.url()
.newBuilder()
/* add parameter */
.removeAllQueryParameters("token")
.removeAllQueryParameters("parameter2")
//移除是防止重复添加参数
//某种情况下可能会报错,造成后台获取的参数有问题
.addQueryParameter("token", "token")
.addQueryParameter("parameter", "parameter")
.build();
Request build = request.newBuilder()
/* add header */
.addHeader("contentType", "text/json")
.url(httpUrl)
.build();
Response response = chain.proceed(build);
return response;
}
}