Comick: increase rate limit and separate (#10033)
* Comick: increase rate limit and separate Closes #9057 * separate ratelimit correctly to avoid stacking * cleaning
This commit is contained in:
parent
d8fe748376
commit
8f13e8b15c
@ -1,7 +1,7 @@
|
|||||||
ext {
|
ext {
|
||||||
extName = 'Comick'
|
extName = 'Comick'
|
||||||
extClass = '.ComickFactory'
|
extClass = '.ComickFactory'
|
||||||
extVersionCode = 57
|
extVersionCode = 58
|
||||||
isNsfw = true
|
isNsfw = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -248,9 +248,23 @@ abstract class Comick(
|
|||||||
|
|
||||||
override val client = network.cloudflareClient.newBuilder()
|
override val client = network.cloudflareClient.newBuilder()
|
||||||
.addNetworkInterceptor(::errorInterceptor)
|
.addNetworkInterceptor(::errorInterceptor)
|
||||||
.rateLimit(3, 1, TimeUnit.SECONDS)
|
.addInterceptor(::imageInterceptor)
|
||||||
|
.rateLimit(5, 6, TimeUnit.SECONDS) // == 50req each (60sec / 1min)
|
||||||
.build()
|
.build()
|
||||||
|
|
||||||
|
private val imageClient = network.cloudflareClient.newBuilder()
|
||||||
|
.rateLimit(12, 8, TimeUnit.SECONDS) // == 1.5req/1sec == 3req/2sec == 90req/60sec
|
||||||
|
.build()
|
||||||
|
|
||||||
|
private fun imageInterceptor(chain: Interceptor.Chain): Response {
|
||||||
|
val request = chain.request()
|
||||||
|
return if (request.url.host.endsWith("comick.pictures")) {
|
||||||
|
imageClient.newCall(request).execute()
|
||||||
|
} else {
|
||||||
|
chain.proceed(request)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun errorInterceptor(chain: Interceptor.Chain): Response {
|
private fun errorInterceptor(chain: Interceptor.Chain): Response {
|
||||||
val response = chain.proceed(chain.request())
|
val response = chain.proceed(chain.request())
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user