Skip to content

Instantly share code, notes, and snippets.

@lynnfield
Created April 29, 2020 05:38
Show Gist options
  • Save lynnfield/1975ae077838d80ebde1a181748dc48c to your computer and use it in GitHub Desktop.
Save lynnfield/1975ae077838d80ebde1a181748dc48c to your computer and use it in GitHub Desktop.
import okhttp3.Cache
import okhttp3.OkHttpClient
import okhttp3.Request
import org.junit.Test
import java.io.File
class CacheTest {
@Test
fun test() {
val directory = File("./cache")
directory.deleteRecursively()
val client = OkHttpClient.Builder()
.cache(Cache(directory, 1024 * 1024))
.addNetworkInterceptor { chain ->
println("----------- intercept netw ------------")
val request = chain.request()
println(request.headers)
chain.proceed(request).also {
println(it.request.headers)
println("-----------------------")
}
}
.addInterceptor { chain ->
println("----------- intercept ------------")
val request = chain.request()
println(request.headers)
chain.proceed(request).also {
println(it.request.headers)
println("-----------------------")
}
}
.build()
val request =
Request.Builder().url("https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js").build()
client.newCall(request).execute().use {
println(it.request.headers)
println("-----------------")
println(it.networkResponse?.request?.headers)
println("-----------------")
println(it.networkResponse?.headers)
println("-----------------")
println(it.networkResponse)
}
println("=====================")
val request1 =
Request.Builder().url("https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js").build()
client.newCall(request1).execute().use {
println(it.request.headers)
println("-----------------")
println(it.networkResponse?.request?.headers)
println("-----------------")
println(it.networkResponse?.headers)
println("-----------------")
println(it.networkResponse)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment