diff --git a/build.gradle.kts b/build.gradle.kts index 0d92d0f..0068131 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -41,6 +41,7 @@ kotlin { implementation(libs.ksoup) api(libs.kotlinx.datetime) api(libs.ktor.client.core) + implementation(libs.ktor.client.encoding) } commonTest.dependencies { implementation(kotlin("test")) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4297007..5026729 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -17,6 +17,7 @@ kotlinx-serialization-core = { module = "org.jetbrains.kotlinx:kotlinx-serializa kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "kotlinx-datetime" } ksoup = { module = "com.fleeksoft.ksoup:ksoup", version.ref = "ksoup" } ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } +ktor-client-encoding = { module = "io.ktor:ktor-client-encoding", version.ref = "ktor" } ktor-client-engine-java = { module = "io.ktor:ktor-client-java", version.ref = "ktor" } ktor-client-engine-curl = { module = "io.ktor:ktor-client-curl", version.ref = "ktor" } ktor-client-engine-js = { module = "io.ktor:ktor-client-js", version.ref = "ktor" } diff --git a/src/commonMain/kotlin/io/github/tomhula/jecnaapi/WebJecnaClient.kt b/src/commonMain/kotlin/io/github/tomhula/jecnaapi/WebJecnaClient.kt index 5bdb536..b49c5e0 100644 --- a/src/commonMain/kotlin/io/github/tomhula/jecnaapi/WebJecnaClient.kt +++ b/src/commonMain/kotlin/io/github/tomhula/jecnaapi/WebJecnaClient.kt @@ -15,6 +15,7 @@ import io.ktor.client.statement.* import io.ktor.http.* import io.ktor.client.HttpClient import io.ktor.client.plugins.HttpTimeout +import io.ktor.client.plugins.compression.ContentEncoding import io.ktor.client.plugins.cookies.AcceptAllCookiesStorage import io.ktor.client.plugins.cookies.HttpCookies import io.ktor.client.plugins.cookies.addCookie @@ -52,6 +53,12 @@ class WebJecnaClient( userAgent(userAgent) else headers.remove(HttpHeaders.UserAgent) + headers.append(HttpHeaders.AcceptLanguage, "en-US,en;q=0.9") + } + + install(ContentEncoding) { + gzip() + deflate() } install(HttpTimeout) { requestTimeoutMillis = requestTimeout.inWholeMilliseconds } followRedirects = false