Skip to content

Commit

Permalink
🚸 NetworkUtil工具类封装优化,提供initConfig来进行初始化设置
Browse files Browse the repository at this point in the history
  • Loading branch information
stars-one committed Mar 28, 2023
1 parent 6e5cdad commit 9a0a3c1
Showing 1 changed file with 23 additions and 5 deletions.
28 changes: 23 additions & 5 deletions src/main/kotlin/com/starsone/controls/utils/net/NetworkUtil.kt
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,28 @@ object NetworkUtil {

var isDebug = false

var okBuilder: OkHttpClient.Builder? = null

/**
* 初始化设置
*
* @param isDebug 是否为调试模式(调试模式开启日志输出)
* @param okHttpClientBuilder okhttp的构造器,用来设置相应的参数
*/
fun initConfig(isDebug: Boolean = false, okHttpClientBuilder: OkHttpClient.Builder? = null) {
this.isDebug = isDebug
okBuilder = okHttpClientBuilder
}

val okHttpClient by lazy {
val client = OkHttpClient.Builder()
.addInterceptor(NetworkLogInterceptor(isDebug))
.build()
val client = if (okBuilder == null) {
OkHttpClient.Builder()
.addInterceptor(CommonHeaderInterceptor())
.addInterceptor(NetworkLogInterceptor(isDebug))
.build()
} else {
okBuilder!!.build()
}
client
}

Expand All @@ -43,7 +61,7 @@ object NetworkUtil {
}
val formBodyData = formBody.build()
//2.构造request
val requestBuilder = Request.Builder()
val requestBuilder = Request.Builder()
.url(url)
.post(formBodyData)

Expand All @@ -70,7 +88,7 @@ object NetworkUtil {
val requestBody = gson.toJson(data).toRequestBody(JSON)

//2.构造request
val requestBuilder = Request.Builder()
val requestBuilder = Request.Builder()
.url(url)
.post(requestBody)

Expand Down

0 comments on commit 9a0a3c1

Please sign in to comment.