在 Android 中,我使用Fuel(一个 Kotlin 库)来获取 JSON 文件。现在,我的代码如下所示(url 是字符串类型的变量):
url.httpGet().responseJson { _, _, result ->
when(result) {
is Result.Failure -> {
//Do Stuff
}
is Result.Success -> {
//Do Stuff
}
}
}
但是,我想获取位于 .json 文件的未缓存版本的 JSON 文件url
。
我读了这篇文章:fetch(),你如何发出一个非缓存的请求?似乎我必须在我的请求中添加标题“pragma: no-cache”和“cache-control: no-cache”。我怎样才能做到这一点?
另外 - 有没有办法让我验证这两个标头是否作为我的请求的一部分发送,用于调试目的?
虽然我的代码示例在 Kotlin 中,但我对 Java 中的答案感到满意。
这是添加标题的方式:
url.httpGet().header(Pair("pragma","no-cache"),Pair("cache-control","no-cache")).responseJson //Rest of code goes here
您可以验证标头是否与请求一起发送,如下所示:
url.httpGet().header(Pair("pragma","no-cache"),Pair("cache-control","no-cache")).responseJson { request, _, result ->
//Log the request in string format. This will list the headers.
Log.d("TEST-APP", request.toString())
when(result) {
is Result.Failure -> {
cont.resumeWithException(result.getException())
}
is Result.Success -> {
cont.resume(JsonParser().parse(result.value.content) as JsonObject)
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句