HTTP常见的状态码有哪些?适用场景有什么?
1、什么是HTTP状态码
HTTP状态码(英语:HTTP Status Code),用以表示网页服务器 http 响应状态的3位数字代码。
HTTP状态码的作用是服务器告诉客户端当前请求响应的状态,通过状态码就能判断和分析服务器的运行状态。
2、常见的状态码和适用场景
状态码第一位数字决定了不同的响应状态,有如下:
1 表示指示信息,服务器收到请求,需要请求者继续执行操作
2 表示成功 3 表示重定向
4 表示请求错误 5 表示服务器错误
常见的有:
200(成功):请求已成功,请求所希望的响应头或数据体将随此响应返回。
206(部分内容):一般用来做断点续传,或者是视频文件等大文件的加载。
301(永久重定向会缓存):请求的网页已永久移动到新位置。 新域名替换旧域名,旧的域名不再使用时,用户访问旧域名时用301就重定向到新的域名。
302(临时重定向不会缓存):常用于未登陆的用户访问用户中心重定向到登录页面。
304(协商缓存):告诉客户端有缓存,直接使用缓存中的数。返回页面的只有头部信息,是没有内容部分。
400(错误请求):求无法被服务器识别。
- 401(未授权): 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
403(禁止):告诉客户端禁止访问该站点或者资源。如在外网环境下,然后访问只有内网IP才能访问的时候则返回。
404(未找到):服务器找不到资源时,或者服务器拒绝请求又不想说明理由时。
- 500(服务器内部错误):服务器遇到错误,无法完成请求。
- 502(错误网关): 服务器作为网关或代理,从上游服务器收到无效响应。
503(服务不可用):服务器停机维护时,主动用503响应请求或 nginx 设置限速,超过限速,会返回503
504(网关超时):服务器作为网关或代理,但是没有及时从上游服务器收到请求