国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Retrofit2日志攔截器的使用

2019-12-12 00:27:32
字體:
來源:轉載
供稿:網友

顯示樣式如下,復制內容的時候使用鼠標中鍵進行選中

打印內容:code,請求方式,url,請求頭,請求體,返回json

class LoggerInterceptor : Interceptor { override fun intercept(chain: Interceptor.Chain?): Response { val orgRequest = chain!!.request() val response = chain.proceed(orgRequest) val body = orgRequest.body() val sb = StringBuilder() if (orgRequest.method() == "POST" && body is FormBody) {  val body1 = body  for (i in 0 until body1.size()) {  sb.append(body1.encodedName(i) + "=" + body1.encodedValue(i) + ",")  }  sb.delete(sb.length - 1, sb.length)  //打印post請求的信息  Logger.t(AppConfigs.LOGGER_NET_TAG).d("code=" + response.code() + "|method=" + orgRequest.method() + "|url=" + orgRequest.url()   + "/n" + "headers:" + orgRequest.headers().toMultimap()   + "/n" + "post請求體:{" + sb.toString() + "}") } else {  //打印get請求的信息  Logger.t(AppConfigs.LOGGER_NET_TAG).d("code=" + response.code() + "|method=" + orgRequest.method() + "|url=" + orgRequest.url()   + "/n" + "headers:" + orgRequest.headers().toMultimap()) } //返回json val responseBody = response.body() val contentLength = responseBody!!.contentLength()  val source = responseBody.source()  source.request(java.lang.Long.MAX_VALUE)  val buffer = source.buffer()  var charset = UTF8  val contentType = responseBody.contentType()  if (contentType != null) {  try {   charset = contentType.charset(UTF8)  } catch (e: UnsupportedCharsetException) {   return response  }  }  if (contentLength != 0L) {  //打印返回json  //json日志使用鼠標中鍵進行選中  Logger.t(AppConfigs.LOGGER_NET_TAG).json(buffer.clone().readString(charset))  } return response }}

在Application中進行初始化Logger

val strategy = PrettyFormatStrategy.newBuilder()  .showThreadInfo(false) // 是否顯示線程信息,默認為ture  .methodCount(1)  // 顯示的方法行數  .methodOffset(0) // 隱藏內部方法調用到偏移量  .tag("tag")  .build() Logger.addLogAdapter(object : AndroidLogAdapter(strategy) {  override fun isLoggable(priority: Int, tag: String?): Boolean {  return BuildConfig.DEBUG  } })

除了需要依賴Retrofit2相關依賴外還需要依賴

implementation 'com.orhanobut:logger:2.2.0'

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陆河县| 托克逊县| 乐昌市| 筠连县| 西贡区| 分宜县| 阳山县| 连云港市| 永宁县| 壤塘县| 山丹县| 阿勒泰市| 太仆寺旗| 湖州市| 长丰县| 乳山市| 桃江县| 鹤岗市| 隆林| 平武县| 郎溪县| 武强县| 宝兴县| 逊克县| 娄底市| 岐山县| 海原县| 文安县| 兰西县| 海城市| 洪湖市| 海口市| 马山县| 洛宁县| 密山市| 南雄市| 横山县| 聊城市| 泸州市| 西藏| 石台县|