304 Not Modified
浏览器缓存相关。
该状态码表示客户端发送附带条件的请求时,服务器端允许请求访问资源,但未满足条件的情况。304 状态码返回时,不包含任何响应的主体部分。304 虽然被划分在 3XX 类别中,但是和重定向没有关系。
带条件的请求(Http 条件请求):使用 Get 方法 请求,请求报文中包含(if-match
、if-none-match
、if-modified-since
、if-unmodified-since
、if-range
)中任意首部。
状态码 304 并不是一种错误,而是告诉客户端有缓存,直接使用缓存中的数据。返回页面的只有头部信息,是没有内容部分的,这样在一定程度上提高了网页的性能。
因为浏览器想使用本地的缓存资源的时候,来判断服务器里的资源是不是在这之后有别修改过了。
当浏览器再次请求该资源时,会通过 If-Modified-Since 请求头字段将上次请求资源时的 Last-Modified 时间发送给服务器。如果资源在这个时间之后没有被修改过,服务器会返回 304 Not Modified,告诉浏览器可以使用缓存的资源。