添加 retrfiot 拦截器Interceptor ,打印服务器返回的json并添加网络请求公共的header
2016-12-03 18:15
786 查看
import java.io.IOException; import java.nio.charset.Charset; import okhttp3.Interceptor; import okhttp3.Request; import okhttp3.Response; import okhttp3.ResponseBody; import okio.Buffer; import okio.BufferedSource; /** * 网络切面处理 * Created By: AndroidStudio * Author :http://write.blog.csdn.net/postedit/53446562 * */ public class OkHttpLoggingInterceptor implements Interceptor { @Override public Response intercept(Chain chain) throws IOException { Request.Builder newBuilder = chain .request() .newBuilder(); Request request = newBuilder .addHeader("Content-Type","application/json; charset=utf-8") .addHeader("Authorization", Bearer ) .build(); String cacheControl=request.cacheControl().toString(); if(TextUtils.isEmpty(cacheControl)){ cacheControl = "public, max-age=60"; } Response response = chain.proceed(request); if(BaseApplication.getInstance().isdebug){ Log.e("ssss", "response返回参数" + response.toString()); //添加打印服务器返回的数据 ResponseBody responseBody = response.body(); long contentLength = responseBody.contentLength(); BufferedSource source = responseBody.source(); source.request(Integer.MAX_VALUE); // Buffer the entire body. Buffer buffer = source.buffer(); if (contentLength != 0) { Log.e("服务器返回数据:", ""+buffer.clone().readString(Charset.forName("UTF-8"))); } } return response. newBuilder() .header("Cache-Control", cacheControl) .build(); } }
相关文章推荐
- retrofit2.0使用拦截器Interceptor统一打印请求与响应的json
- android,retrofit,okhttp,日志拦截器,使用拦截器Interceptor统一打印请求与响应的json
- [置顶] retrofit/okhttp添加拦截器公共参数签名,添加cookie,打印响应返回
- retrofit2.0使用拦截器Interceptor统一打印请求与响应的json
- android使用asynchttp网络请求服务器返回json数据并显示在手机
- java网络编程二:服务器处理多个用户请求的解决方案(返回多个用户输入的信息)
- AJAX向服务器发送请求并返回json数据
- 微信小程序网络请求应用->发送参数返回服务器内容
- Android使用HttpURLConnection请求网络返回JSON数据并解析
- iOS开发:过滤网络请求中,服务器返回空值null数据的处理(过滤null显示问题)
- 初涉Ajax,以post或get方法发送数据,以json或xml形式接收服务器返回的请求
- Volley学习(二)简封Volley、为Volley请求头体添加Json参数、Gson和JsonObject生成Json数据、Gson解析返回的Json
- Python3基础 打印出远程服务器返回的header信息 response.info()
- AFNetworking的网络请求(POST GET XML JSON以及其他类型的返回数据)和网络转态监听
- 用node.js搭建服务器,模拟返回json数据供客户端get,post请求使用
- java网络编程二:服务器处理多个用户请求的解决方案(返回多个用户输入的信息)
- Android 之 网络访问服务器,解析JSON数据(返回无乱码)
- java网络编程二:服务器处理多个用户请求的解决方案(返回多个用户输入的信息)
- 【nodejs】服务器处理url请求并返回json数据
- 使用getJSON()异步请求服务器返回json格式数据的实现