« 回到主页
HTTP状态码
1 常见的HTTP状态码
- 200:成功,服务器已成功处理了请求,通常表示服务器提供了请求的网页。
- 301:永久移动,请求的网页已永久移动到新位置,服务器返回此响应时,会自动将请求转到新位置。
- 302:临时移动,暂时重定向,服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
- 304:未修改,自从上次请求后,请求的网页未修改过,服务器返回此响应时,不会返回网页内容。
- 400:错误请求,服务器不理解请求的语法。
- 403:禁止,服务器拒绝请求。
- 404:未找到,服务器找不到请求的网页。
- 500:服务器内部错误,服务器遇到错误,无法完成请求。
2 200 OK (from cache) 与 304 Not Modified
2.1 200 OK (from cache)
- 表示该资源已经被缓存过,并且在有效期内,所以不再服务器发出请求,即浏览器没有跟服务器确认,直接使用浏览器缓存。
2.2 304 Not Modified
- 当资源过期时(超过Cache-Control中的max-age),若发现资源具有Last-Modified声明,则再次向服务器请求时带上头 If-Modified-Since(Last-Modified的值),服务器收到请求后发现带有头If-Modified-Since ,则与资源的最后修改时间进行比对,若最后修改时间较旧,说明资源未被修改过,则响应HTTP 304和响应消息包头(无需响应消息包体),告知客户端直接从浏览器缓存取数据;
- 当资源过期时(超过Cache-Control中的max-age),若发现资源具有Etag声明,则再次向服务器请求时带上头If-None-Match (Etag的值),服务器收到请求后发现带有头If-None-Match,则与资源的ETag进行比对,若ETag一致,则响应HTTP 304和响应消息包头(无需响应消息包体),告知客户端直接从浏览器缓存取数据。
« 回到主页