retrofit2.0使用拦截器Interceptor统一打印请求与响应的json
2017-08-31 10:51
459 查看
先添加依赖:
compile ‘com.squareup.retrofit2:retrofit:2.1.0’
compile ‘com.squareup.retrofit2:converter-gson:2.1.0’
compile ‘com.squareup.okhttp3:logging-interceptor:3.1.2’
二:okhttp已经为我们提供了一个Interceptor的实现类:HttpLoggingInterceptor。只要稍作设置就可以:
三:使用
下面是请求的代码:
接下我们查看日志:
compile ‘com.squareup.retrofit2:retrofit:2.1.0’
compile ‘com.squareup.retrofit2:converter-gson:2.1.0’
compile ‘com.squareup.okhttp3:logging-interceptor:3.1.2’
二:okhttp已经为我们提供了一个Interceptor的实现类:HttpLoggingInterceptor。只要稍作设置就可以:
HttpLoggingInterceptor logging = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { @Override public void log(String message) { // Timber.tag("OkHttp").d(message); // Logger.e("okhttp",message); Log.e("okhttp",message); } }); logging.setLevel(HttpLoggingInterceptor.Level.BODY);//Level中还有其他等级 OkHttpClient client = new OkHttpClient.Builder() .addInterceptor(logging) .build();
三:使用
Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://api.douban.com/v2/") .addConverterFactory(GsonConverterFactory.create(new GsonBuilder().create())) .client(client)//添加上面设置好的OkHttpClient .build();
下面是请求的代码:
RetrofitService service = retrofit.create(RetrofitService.class); Call<Book> call = service.getSearchBook("金瓶梅", null, 0, 1); call.enqueue(new Callback<Book>() { @Override public void onResponse(Call<Book> call, Response<Book> response) { button.setText(response.body()+""); // Log.e("Json",""+response.body().toString()); } @Override public void onFailure(Call<Book> call, Throwable t) { } });
接下我们查看日志:
相关文章推荐
- retrofit2.0使用拦截器Interceptor统一打印请求与响应的json
- android,retrofit,okhttp,日志拦截器,使用拦截器Interceptor统一打印请求与响应的json
- retrofit 2.0 如何通过 HttpLoggingInterceptor 打印服务器响应的 json ?
- 添加 retrfiot 拦截器Interceptor ,打印服务器返回的json并添加网络请求公共的header
- Retrofit2.0(三)如超时设置,加请求头,加公共请求参数,加拦截器等
- Retrofit2.0+OkHttp打印Request URL(请求地址参数)
- Retrofit2.0的使用之添加请求头
- Retrofit2.0 使用归纳和 JSONObject Conveter
- axios使用拦截器统一处理所有的http请求的方法
- 玩玩AJAX之使用ashx文件响应来自JQuery的JSON请求.
- retrofit2.0中使用okHTTP post get put 过滤请求内容或添加内容
- Android使用Retrofit2.0和RxJava2.0处理网络请求
- 玩玩AJAX之使用ashx文件响应来自JQuery的JSON请求.
- Okhttpinterceptor____用于打印Okhttp的请求头响应头的信息
- OKHttp使用拦截器(Interceptor)POST与GET方法,统一封装传公共参数
- Retrofit2.0添加日志拦截器打印URL一级返回数据
- Retrofit 2.0使用详解,配合OkHttp、Gson,Android最强网络请求框架
- 在Module中使用自定义过滤器,来统一对站内所有请求响应的输出内容进行采集或更改。
- Android中Retrofit 2.0直接使用JSON进行数据交互