Disable SaveBodyPlugin & fix non-redirect Ktor client defaults

This commit is contained in:
renovate[bot] authored and GitHub committed 2024-10-29 16:21:19 +00:00
1 parent 86bb240633
commit aab8fabb1f
2 files changed
+7 -7

No files matched your search

@@ -34,7 +34,6 @@ import coil3.request.ImageRequest
import coil3.request.crossfade
import coil3.serviceLoaderEnabled
import coil3.util.DebugLogger
import com.hippo.ehviewer.client.EhCookieStore
import com.hippo.ehviewer.client.EhTagDatabase
import com.hippo.ehviewer.coil.CropBorderInterceptor
import com.hippo.ehviewer.coil.DetectBorderInterceptor
@@ -73,7 +72,6 @@ import eu.kanade.tachiyomi.util.lang.withUIContext
import eu.kanade.tachiyomi.util.system.logcat
import io.ktor.client.HttpClient
import io.ktor.client.engine.okhttp.OkHttp
import io.ktor.client.plugins.cookies.HttpCookies
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import logcat.AndroidLogcatLogger
@@ -212,10 +210,7 @@ class EhApplication :
val noRedirectKtorClient by lazy {
HttpClient(ktorClient.engine) {
followRedirects = false
install(HttpCookies) {
storage = EhCookieStore
}
configureCommon(redirect = false)
}
}
@@ -5,6 +5,7 @@ import com.hippo.ehviewer.client.EhCookieStore
import io.ktor.client.HttpClientConfig
import io.ktor.client.engine.HttpClientEngineConfig
import io.ktor.client.plugins.HttpTimeout
import io.ktor.client.plugins.SaveBodyPlugin
import io.ktor.client.plugins.UserAgent
import io.ktor.client.plugins.cookies.HttpCookies
import io.ktor.client.plugins.defaultRequest
@@ -14,7 +15,7 @@ import io.ktor.http.HttpHeaders
private const val CHROME_ACCEPT = "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
private const val CHROME_ACCEPT_LANGUAGE = "en-US,en;q=0.5"
fun <T : HttpClientEngineConfig> HttpClientConfig<T>.configureCommon() = apply {
fun <T : HttpClientEngineConfig> HttpClientConfig<T>.configureCommon(redirect: Boolean = true) = apply {
install(HttpCookies) {
storage = EhCookieStore
}
@@ -28,4 +29,8 @@ fun <T : HttpClientEngineConfig> HttpClientConfig<T>.configureCommon() = apply {
header(HttpHeaders.Accept, CHROME_ACCEPT)
header(HttpHeaders.AcceptLanguage, CHROME_ACCEPT_LANGUAGE)
}
followRedirects = redirect
install(SaveBodyPlugin) {
disabled = true
}
}