1、先在Application中初始化以及设置一些属性
//使用OkGo的拦截器
OkHttpClient.Builder builder = new OkHttpClient.Builder();
HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor("meee");
//日志的打印范围F
loggingInterceptor.setPrintLevel(HttpLoggingInterceptor.Level.BODY);
//在logcat中的颜色
loggingInterceptor.setColorLevel(Level.INFO);
//默认是Debug日志类型
builder.addInterceptor(loggingInterceptor);
//使用内存保持cookie,app退出后,cookie消失
builder.cookieJar(new CookieJarImpl(new MemoryCookieStore()));
//设置请求超时时间,默认60秒
builder.readTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS); //读取超时时间
builder.writeTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS); //写入超时时间
builder.connectTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS); //连接超时时间
OkGo.getInstance()
.init(this)
.setOkHttpClient(builder.build())//不设置则使用默认
.setRetryCount(0);//请求超时重连次数,默认3次
2、具体调用实施的方法
private void post方法名(String url地址) {
OkGo.<String>post(url)
.tag(MainActivity.this)
.cacheMode(CacheMode.DEFAULT)
.params("键", "值)
.params("键", 值)
.execute(new StringCallback() {
@Override
public void onSuccess(Response<String> response) {
Log.i(TAG, "onSuccess: body---" + response.body());
} @Override
public void onStart(Request<String, ? extends Request> request) {
super.onStart(request);
Log.i(TAG, "onStart: -----" + request.getUrlParam("C_type") + "--刷卡登录");
} @Override
public void onFinish() {
super.onFinish();
Log.i(TAG, "onFinish: -----");
} @Override
public void onError(Response<String> response) {
super.onError(response);
Log.i(TAG, "onError: " + response.body());
}
});
}
新人小白
//使用OkGo的拦截器
OkHttpClient.Builder builder = new OkHttpClient.Builder();
HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor("meee");
//日志的打印范围F
loggingInterceptor.setPrintLevel(HttpLoggingInterceptor.Level.BODY);
//在logcat中的颜色
loggingInterceptor.setColorLevel(Level.INFO);
//默认是Debug日志类型
builder.addInterceptor(loggingInterceptor);
//使用内存保持cookie,app退出后,cookie消失
builder.cookieJar(new CookieJarImpl(new MemoryCookieStore()));
//设置请求超时时间,默认60秒
builder.readTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS); //读取超时时间
builder.writeTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS); //写入超时时间
builder.connectTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS); //连接超时时间
OkGo.getInstance()
.init(this)
.setOkHttpClient(builder.build())//不设置则使用默认
.setRetryCount(0);//请求超时重连次数,默认3次
2、具体调用实施的方法
private void post方法名(String url地址) {
OkGo.<String>post(url)
.tag(MainActivity.this)
.cacheMode(CacheMode.DEFAULT)
.params("键", "值)
.params("键", 值)
.execute(new StringCallback() {
@Override
public void onSuccess(Response<String> response) {
Log.i(TAG, "onSuccess: body---" + response.body());
} @Override
public void onStart(Request<String, ? extends Request> request) {
super.onStart(request);
Log.i(TAG, "onStart: -----" + request.getUrlParam("C_type") + "--刷卡登录");
} @Override
public void onFinish() {
super.onFinish();
Log.i(TAG, "onFinish: -----");
} @Override
public void onError(Response<String> response) {
super.onError(response);
Log.i(TAG, "onError: " + response.body());
}
});
}
新人小白
自己封装的retrofit+okhttp+rxjava,想要什么功能自己加,还能顺便学习原理
自己封装的retrofit+okhttp+rxjava,想要什么功能自己加,还能顺便学习原理
自己封装的确实好,方便也熟悉。我之前网络请求框架用的少,不过现在也应该向你学习下去自己封装一个