|
|
|
@ -1,9 +1,11 @@
|
|
|
|
|
package com.common.commonlib.net
|
|
|
|
|
|
|
|
|
|
import com.common.commonlib.log.Logger.d
|
|
|
|
|
import com.common.commonlib.net.interceptor.BaseUrlInterceptor
|
|
|
|
|
import com.common.commonlib.utils.BaseUtils
|
|
|
|
|
import okhttp3.Interceptor
|
|
|
|
|
import okhttp3.OkHttpClient
|
|
|
|
|
import okhttp3.logging.HttpLoggingInterceptor
|
|
|
|
|
import retrofit2.Retrofit
|
|
|
|
|
import retrofit2.adapter.rxjava3.RxJava3CallAdapterFactory
|
|
|
|
|
import retrofit2.converter.gson.GsonConverterFactory
|
|
|
|
@ -16,6 +18,9 @@ import java.util.concurrent.TimeUnit
|
|
|
|
|
* @since 2021/7/28
|
|
|
|
|
*/
|
|
|
|
|
object RequestManager {
|
|
|
|
|
const val TAG = "RequestManager"
|
|
|
|
|
private var logLevel = HttpLoggingInterceptor.Level.NONE
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 默认超时时间(s)
|
|
|
|
|
*/
|
|
|
|
@ -30,6 +35,10 @@ object RequestManager {
|
|
|
|
|
|
|
|
|
|
private var mRetrofitWithIntercept: Retrofit? = null
|
|
|
|
|
|
|
|
|
|
private val loggingInterceptor = HttpLoggingInterceptor {
|
|
|
|
|
d(TAG, it)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 创建service
|
|
|
|
|
*/
|
|
|
|
@ -55,6 +64,10 @@ object RequestManager {
|
|
|
|
|
// 动态HOST替换拦截器
|
|
|
|
|
builder.addInterceptor(BaseUrlInterceptor())
|
|
|
|
|
|
|
|
|
|
// 添加日志拦截器
|
|
|
|
|
loggingInterceptor.level = logLevel
|
|
|
|
|
builder.addInterceptor(loggingInterceptor)
|
|
|
|
|
|
|
|
|
|
if (!BaseUtils.isListEmpty(interceptors)) {
|
|
|
|
|
for (intercept in interceptors!!) {
|
|
|
|
|
builder.addInterceptor(intercept)
|
|
|
|
@ -74,4 +87,25 @@ object RequestManager {
|
|
|
|
|
.build()
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 打开完整日志
|
|
|
|
|
*/
|
|
|
|
|
fun openFullLog() {
|
|
|
|
|
logLevel = HttpLoggingInterceptor.Level.BODY
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 打开基础日志
|
|
|
|
|
*/
|
|
|
|
|
fun openBasicLog() {
|
|
|
|
|
logLevel = HttpLoggingInterceptor.Level.BASIC
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 打开头部日志
|
|
|
|
|
*/
|
|
|
|
|
fun openHeadLog() {
|
|
|
|
|
logLevel = HttpLoggingInterceptor.Level.HEADERS
|
|
|
|
|
}
|
|
|
|
|
}
|