HTTP状态码304是什么 - 智学轩城

HTTP状态码304是什么

南熙寒笙 头像

南熙寒笙

2026-05-11 13:52:29

304表示“Not Modified”,即“未修改”。当客户端发送一个条件请求时,服务器检查资源未改变,返回304状态码,告诉客户端资源未改变,可以继续使用缓存中的数据。
这就是坑,别信“304是文件不存在”。
200 OK和304的区别:

  • 200 OK表示请求成功,资源已被修改。
  • 304 Not Modified表示资源未被修改,可以继续使用缓存。
    别这么干,直接用304判断文件是否存在。
咸仲洋头像

咸仲洋

2026-04-29 11:34:17

哎呦,这个 HTTP 状态码 304 呢,它啊,是个挺有意思的东西。说起来啊,2022 年我在某个城市,那天我在查资料,突然就看到了这个状态码。,我当时也懵,心里想,这到底是什么意思呢?
后来我查了查,原来啊,这个 304 是“Not Modified”,中文就是“未修改”。这意思是说,客户端请求的资源在上一次请求之后没有任何变化,服务器可以直接返回一个空的响应,而不需要重新发送资源内容。
举个例子吧,比如说你昨天访问了一个网页,浏览器会把这个网页的内容缓存下来。今天你再次访问同一个网页,浏览器就会先发一个带有 If-None-Match 或 If-Modified-Since 头的请求,告诉服务器,我已经有了这个资源,你看看有没有更新。
如果服务器发现资源没有变化,就会返回这个 304 状态码,告诉浏览器,资源没变,不用重新下载。这样,浏览器就可以直接从缓存中读取资源,省去了重新下载的时间。
,当时我看了这个解释,心里想,这可真是技术上的小细节,却大大提高了效率啊。可能我偏激了,但我觉得这真的是挺有意思的。