@@ -16,11 +16,11 @@ import io.ktor.client.engine.HttpClientEngine
1616import io.ktor.client.engine.okhttp.OkHttp
1717import io.ktor.client.engine.okhttp.OkHttpConfig
1818import io.ktor.client.engine.okhttp.OkHttpEngine
19+ import io.ktor.client.plugins.HttpTimeout
1920import io.ktor.client.plugins.UserAgent
2021import kotlinx.coroutines.flow.MutableStateFlow
2122import okhttp3.brotli.BrotliInterceptor
2223import okhttp3.internal.tls.OkHostnameVerifier
23- import java.util.concurrent.TimeUnit
2424import javax.net.ssl.SSLContext
2525
2626class AppHttpClient @AssistedInject constructor(
@@ -57,13 +57,18 @@ class AppHttpClient @AssistedInject constructor(
5757 agent = userAgent
5858 }
5959
60+ // Increase default timeouts
61+ install(HttpTimeout ) {
62+ connectTimeoutMillis = 20_000
63+ requestTimeoutMillis = 60_000
64+ socketTimeoutMillis = 60_000
65+ }
66+
6067 @Suppress(" UNCHECKED_CAST" )
6168 if (engine is OkHttpEngine ) (this as HttpClientConfig <OkHttpConfig >).engine {
6269 addNetworkInterceptor(BrotliInterceptor )
6370 config {
6471 followRedirects(false )
65- connectTimeout(20 , TimeUnit .SECONDS )
66- readTimeout(60 , TimeUnit .SECONDS )
6772 sslSocketFactory(sslContext.socketFactory, certManager)
6873 hostnameVerifier(certManager.HostnameVerifier (OkHostnameVerifier ))
6974 }
0 commit comments