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状态码,只是大致说明每个状态码所代表的含义,并未做过多详细说明,有需要详细内容的还请自行查阅