HTTP 304 错误码,下载文件当文件没有发生改变时会返回改错吗

本文详细解析了HTTP常见的返回状态码,包括200成功、300系列重定向、400系列客户端错误及500系列服务器错误。特别介绍了304状态码的含义及其在减少文件下载和资源消耗上的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HTTP 最常见返回码

	200 成功
	300 重定向
	301 被请求的资源已永久移动到新位置
	304 文档内容未发生改变
	404 连接找不到
	405 请求方法不能用于请求响应资源【不支持该请求,长见与 put,delete 方法】
	408 请求超时(Request TimeOut)
	500 服务器错误
	505 服务器不支持请求中所使用的HTTP协议版本。

304 文档内容未发生改变

 如果客户端发送了一个带条件的 GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)
 并没有改变,则服务器应当返回这个状态码。304 响应禁止包含消息体,因此始终以消息头后的第一个空行结尾。

拉取文件时使用 http head相关协议减少不必要的文件下载,从而减少流量,与资源消耗。

具体代码实现

// 相关请求AsyncHttpClient httpClient = new AsyncHttpClient();
// 添加固定头 If-Modified-Since
SharedPreferences spfs = context.getSharedPreferences(NAME, Context.MODE_PRIVATE);
String ims = spfs.getStrting(sp_key, "");
httpClient.addHeader("If-Modified-Since", ims);
httpClient.get()|httpClient.post()
// 返回结果处理
for (int i = 0; i < headers.length; i++) {
  Header header = headers[i];
  Log.d(TAG,"head.name: " + header.getName() + " header.getValue: " + header.getValue());
  if (header.getName().equals("Last-Modified")) 
    ifModifiedSince = header.getValue();
}
SharedPreferences spfs = context.getSharedPreferences(NAME, Context.MODE_PRIVATE)
Editor editor = spfs.edit();
editor.putString(sp_key, modifiedSince).commit();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值