Nea*_*999 8 java retrofit okhttp
我需要检查HTTP request使用OkHTTP库的响应头.在加载数据之前,我需要检查它的最后更新时间.问题在于响应体是关于2 MB所以我需要只获得Last-Modified标题.是否可以仅加载没有响应主体的响应头,以提高程序的RESTful操作的速度?
wer*_*ero 12
您可以发送仅检索标头的HTTP HEAD请求.您只需要检查您的服务器应用程序是否支持HEAD请求.
HEAD方法与GET相同,只是服务器不能在响应中返回消息体.响应HEAD请求的HTTP头中包含的元信息应该与响应GET请求时发送的信息相同.该方法可用于获得关于请求所暗示的实体的元信息,而无需转移实体主体本身.此方法通常用于测试超文本链接的有效性,可访问性和最近的修改.
(http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)
OkHttp的示例:
String url = ...
Request request = new Request.Builder().url(url).head().build();
Run Code Online (Sandbox Code Playgroud)
响应主体是流式传输的,因此您可以发出常规请求,读取标头,然后决定是否使用该主体。如果您不想要身体,可以close()没有太多浪费。
服务器提供可能会被放弃的响应的成本很小。但总的成本会比制作下侧HEAD,然后GET,除非你希望放弃请求的显著的比例(> 90%)的要求。
| 归档时间: |
|
| 查看次数: |
3493 次 |
| 最近记录: |