HTTP状态码有哪些?「前端每日一题v22.11.9」

发布于:2022-11-09 ⋅ 阅读:(8) ⋅ 点赞:(0) ⋅ 评论:(0)

HTTP状态码有哪些?「前端每日一题v22.11.9」

说明

HTTP状态码表示超文本传输协议响应状态的3位数字代码。三位数字的第一个数字表示五种状态之一

以下分别为HTTP各种状态含义

1xx消息

请求已经被服务器接收到,需要继续处理,表示一种临时相应状态

  • 100 Continue:服务器已经接收到请求头,客户端应该继续发送请求主体内容
  • 101 Switching Protocols:服务器已经理解了客户端的请求,通过Upgrade消息头通知客户端采用不同的协议继续发送请求
  • 102 Processing:文件操作的子请求,可能需要很长时间才能完成,表示服务器已经收到请求并正在处理,无可用响应
  • 103 Early Hints:用来在最终的HTTP消息之前返回一些响应头

2xx成功

这一类表示请求已经被服务器接收,理解并处理

  • 200 OK:请求成功,响应数据成功返回
  • 201 Created:请求已经被实现,并且有一个新的资源已经依据请求的需要而建立
  • 202 Accepted:服务器已经接收请求,但是并未处理
  • 203 Non-Authoritative Information:服务器为转换代理服务器,比如网络加速器
  • 204 No Content:服务器成功处理了请求,但是没有返回任何内容。可以用在Wi-Fi需要web认证的页面上
  • 205 Reset Content:服务器成功处理了请求,没有返回任何内容,但是这个响应需要重制文档视图
  • 206 Partial Content:服务已经处理了部分get请求,用于http下载工具
  • 207 Multi-Status:之后的消息体将是一个XML消息
  • 208 Already Reported:DAV绑定的成员已经在响应之前部分被列举
  • 226 IM Used:服务器已经满足了对资源的请求

3xx重定向

代表客户端需要采取进一步操作才能完成,主要用来重定向,表示后续的请求在这次的响应中注明

  • 300 Multiple Choices:返回的资源有一些列的可以选择的地址,用户或者浏览器能够自行选择一个地址进行重定向
  • 301 Moved Permanently:被请求的资源已经永久移动到了新地址
  • 302 Found:临时重定向
  • 303 See Other:查看其它地址,可用get和post请求查看,响应禁止被缓存
  • 304 Not Modified:缓存,请求头中的If-Modified-Since或If-None-Match对应的版本是否修改,未修改不需要重新传输
  • 305 Use Proxy:被请求的资源必须通过代理才能够访问
  • 306 Switch Proxy:最新规范已经弃用
  • 307 Temporary Redirect:请求应该与另一个URI重复
  • 308 Permanent Redirect:请求和所有将来的请求应该使用另一个URI重复

4xx客户端错误

客户端发生了错误,阻碍了服务器的处理

  • 400 Bad Request:明显的客户端错误,比如请求方式问题,请求体过大
  • 401 Unauthorized:类似403,未认证,用户没有必要的凭证
  • 402 Payment Required:预留将来可能的需求
  • 403 ForBidden:服务器已经理解请求,但是拒绝执行
  • 404 Not Found:请求失败,服务器上没有对应的资源
  • 405 Method Not Allowed:请求方法不能用于请求相应的资源
  • 406 Not Acceptable:请求的资源的内容特性无法满足请求头中的条件
  • 407 Proxy Authentication Required:客户端必须在代理服务器上进行身份验证
  • 408 Request Timeout:请求超时
  • 409 Conflict:请求存在冲突
  • 410 Gone:请求的资源不再可用
  • 411 Length Required:服务器拒绝在没有定义Content-Length头的情况下接受请求
  • 412 Precondition Failed:服务器在请求的头字段中给出先决条件时,没能满足其中一个或者多个
  • 413 Request Entity Too Large:请求实体数据过大,服务器拒绝处理
  • 414 Request-URI Too Lang:URI长度过长
  • 415 Unsupported Media Type:请求的方法或者资源,不是服务器中所支持的格式
  • 416 Requested Range Not Satisfiable:客户端要求的一部分内容服务端不能提供
  • 417 Expectation Failed:请求头重的Expect中指定的预期内容无法被服务器满足
  • 418 I’m a teapot:彩蛋
  • 421 Misdirected Request:无法产生响应的服务器
  • 422 Unprocessable Entity:语义错误,无法响应
  • 423 Locked:资源被锁定
  • 424 Failed Dependency:之前的某个请求发生错误,导致请求失败
  • 425 Too Early:服务器拒绝处理,避免重放攻击
  • 426 Upgrade Required:客户端应切换到Upgrade头字段
  • 428 Precondition Required:原服务器要求该请求满足一定条件
  • 429 Too Many Requests:用户在给定的时间内发送了太多的请求
  • 431 Request Header Fields Too Large:服务器不愿处理请求,因为一个或多个头字段过大
  • 440 Login Time-out:客户端session逾时失效,需要重新登入
  • 451 Unavailable For Legal Reasons:因法律的要求而被拒绝

5xx服务器错误

表示服务器无法完成有效请求

  • 500 Internal Server Error:通用服务器错误消息,服务器遇到了一个无法预料的情况
  • 501 Not Implemented:不支持当前请求所需的某个功能
  • 502 Bad Gateway:网关执行请求时,上游服务收到无效响应
  • 503 Service Unavailable:服务器临时维护或者过载
  • 504 Gateway Timeout:网关超时
  • 505 HTTP Version Not Supported:服务器不支持请求的http版本
  • 506 Variant Also Negotiates:服务器内部配置错误
  • 507 Insufficient Storage:服务器无法存储
  • 508 Loop Detected:服务器处理请求陷入死循环
  • 510 Not Extended:获取资源的策略不满足
  • 511 Network Authentication Required:客户端需要身份验证才能获得网络访问权限

以上就是当前HTTP状态码,只是大致说明每个状态码所代表的含义,并未做过多详细说明,有需要详细内容的还请自行查阅