Skip to content

master 分支ServiceCreator 的一个适配错误 #39

@zcwfeng

Description

@zcwfeng

Before:

private val okHttpClient by lazy (LazyThreadSafetyMode.SYNCHRONIZED){
OkHttpClient().newBuilder().apply {
connectTimeout(CONNECT_TIMEOUT, TimeUnit.SECONDS)
readTimeout(READ_TIMEOUT, TimeUnit.SECONDS)
// get response cookie
addInterceptor(HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY))
addInterceptor {
val request = it.request()
val response = it.proceed(request)
val requestUrl = request.url.toString()
val domain = request.url.host
// set-cookie maybe has multi, login to save cookie
if ((requestUrl.contains(SAVE_USER_LOGIN_KEY) || requestUrl.contains(
SAVE_USER_REGISTER_KEY
))
&& response.headers(SET_COOKIE_KEY).isNotEmpty()
) {
val cookies = response.headers(SET_COOKIE_KEY)
val cookie = encodeCookie(cookies)
saveCookie(requestUrl, domain, cookie)
}
response
}
addInterceptor {
val request = it.request()
val builder = request.newBuilder()
val domain = request.url.host
// get domain cookie
if (domain.isNotEmpty()) {
val spDomain: String = DataStoreUtils.readStringData(domain, "")
val cookie: String = spDomain.ifEmpty { "" }
if (cookie.isNotEmpty()) {
builder.addHeader(COOKIE_NAME, cookie)
}
}
it.proceed(builder.build())
}
}.build()

}

我修改之后:

private val okHttpClient by lazy (LazyThreadSafetyMode.SYNCHRONIZED){
OkHttpClient().newBuilder().apply {
connectTimeout(CONNECT_TIMEOUT, TimeUnit.SECONDS)
readTimeout(READ_TIMEOUT, TimeUnit.SECONDS)
// get response cookie
addInterceptor(HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY))
addInterceptor {
val request = it.request()
val response = it.proceed(request)
val requestUrl = request.url().toString()
val domain = request.url().uri().host
// set-cookie maybe has multi, login to save cookie
if ((requestUrl.contains(SAVE_USER_LOGIN_KEY) || requestUrl.contains(
SAVE_USER_REGISTER_KEY
))
&& response.headers(SET_COOKIE_KEY).isNotEmpty()
) {
val cookies = response.headers(SET_COOKIE_KEY)
val cookie = encodeCookie(cookies)
saveCookie(requestUrl, domain, cookie)
}
response
}
addInterceptor {
val request = it.request()
val builder = request.newBuilder()
val domain = request.url.host
// get domain cookie
if (domain.isNotEmpty()) {
val spDomain: String = DataStoreUtils.readStringData(domain, "")
val cookie: String = spDomain.ifEmpty { "" }
if (cookie.isNotEmpty()) {
builder.addHeader(COOKIE_NAME, cookie)
}
}
it.proceed(builder.build())
}
}.build()

}

但是依然抱错:
/PlayAndroid/network/src/main/java/com/zj/network/base/ServiceCreator.kt: (35, 28): Unresolved reference: HttpLoggingInterceptor

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions