HTTP状态码都有哪些?

1.那么我们先来说一说HTTP状态码是什么

HTTP状态码用以表示网页服务器超文本传输协议响应状态的3位数字代码,用简单的话来讲 HTTP状态码的作用是服务器告诉客户端当前请求相应的状态,通过状态码就能判断和分析服务器的运行状态

2.状态码

状态码的第一位数字决定了不同的响应状态如下:

1 表示消息
2 表示成功
3 表示重定向
4 表示请求错误
5 表示服务器错误


代表请求已被接受,需要继续处理1. 1xx

1xx常见的状态码有:

100 这个临时响应是用来通知客户端她的部分请求已经被服务器接收,且仍未被拒绝
101 服务器根据客户端的请求切换协议,主要用于websocket或者http2升级

2. 2xx

代表请求已经被服务器接收、接受、理解

2xx常见的状态码有:

200 请求已经成功,请求所希望的响应头或者数据体随此响应返回

201

请求成功且服务器创建了新的资源
202 服务器已经接收请求 但还没有进行处理
203 服务器已成功处理请求 但返回的信息可能来自另一来源
204 服务器成功处理请求 但没有返回任何内容
205 服务器成功处理请求 但没有返回任何内容
206 服务器成功处理了部分请求

3.3xx

表示要完成请求,需要进一步的操作,通常这些状态码用来重定向

3xx常见的状态码有:

300 针对请求,服务器可执行多种操作
301 请求的网页已经永久移动到新位置
302 服务器目前从不同的位置网页响应请求 但请求者应继续使用原有位置来进行以后的请求
303 请求者当对目前从不同的位置使用单独的GET请求来检索响应时 服务器返回此代码
305 请求者只能使用代理访问请求的网页
307 服务器目前从不同位置的网页响应请求,但请求者应该继续使用原有位置来进行以后的请求

4.4xx

代表了客户端看起来可能发生了错误,妨碍了服务器的处理

4xx常见的状态码有:

400 服务器不理解请求的语法
401 请求要求身份验证
403 服务器拒绝了请求
404 服务器找不到请求的网页
405 禁用请求中指定的方法
406 无法使用请求的内容特性响应请求的网页
407 此状态码代码与401类似,但指定请求者应当授权使用代理
408 服务器等候请求发生超时

5.5xx

表示服务器无法完成明显有效的请求  代表了服务器在处理请求的过程中有错误或者异常状态发生

5xx常见的状态码有:

500 服务器遇到错误 无法完成请求
501 服务器不具备完成请求的功能
502 服务器作为网关或代理 从上游服务器收到无效响应
503 服务器目前无法使用
504 服务器作为网关或代理,但是没有及时从上游服务器收到请求
505 服务器不支持请求中所用的HTTP协议版本

3.状态码的适用场景有哪些呢?:

  • 206:一般用来做断点续传,或者是视频文件等大文件的加载
  • 301:永久重定向会缓存   新域名替换旧域名时
  • 302:临时重定向不会缓存  常用于未登陆的用户访问用户中心重定向到登录页面
  • 400:参数有误  请求无法被服务器识别
  • 403:告诉客户端进制访问该站点或者资源  如在外网的环境下,然后访问只有内网IP才能访问的时候则会返回
  • 404:服务器找不到资源时 或者服务器拒绝请求又不想说明理由时
  • 504:网关超时

你可能感兴趣的