返回
揭秘HTTP状态码的奥秘:一览服务器的反馈信息
前端
2024-01-09 07:46:37
HTTP状态码的概述
HTTP状态码是一个三位数字的代码,它被用作HTTP响应的一部分,以指示请求的状态。HTTP状态码可以分为五种类型:
- 1xx 信息性状态码 :表示请求已收到,正在处理。
- 2xx 成功状态码 :表示请求已成功处理。
- 3xx 重定向状态码 :表示需要进一步的操作以完成请求。
- 4xx 客户端错误状态码 :表示请求有语法错误或无法完成。
- 5xx 服务器错误状态码 :表示服务器在处理请求时遇到了错误。
常见HTTP状态码及其含义
1xx 信息性状态码
- 100 继续 :表示客户端应该继续发送请求。
- 101 切换协议 :表示服务器已切换到客户端请求的协议。
2xx 成功状态码
- 200 确定 :表示请求已成功处理,并且服务器已返回请求的数据。
- 201 创建 :表示请求已成功创建了新的资源。
- 202 已接受 :表示请求已成功接收,但尚未处理。
- 203 非授权信息 :表示服务器已成功处理请求,但返回的内容可能与原始资源不同。
- 204 无内容 :表示服务器已成功处理请求,但没有返回任何内容。
- 205 重置内容 :表示服务器已成功处理请求,并且已重置文档视图。
- 206 部分内容 :表示服务器已成功处理请求,但只返回了部分内容。
3xx 重定向状态码
- 300 多种选择 :表示有多个资源可供选择。
- 301 永久重定向 :表示请求的资源已被永久重定向到另一个位置。
- 302 临时重定向 :表示请求的资源已被临时重定向到另一个位置。
- 303 查看其他位置 :表示请求的资源可以在另一个位置找到。
- 304 未修改 :表示请求的资源自上次请求后未被修改。
- 305 使用代理 :表示请求的资源只能通过代理服务器访问。
- 307 临时重定向 :表示请求的资源已被临时重定向到另一个位置,但与302不同的是,307会保留原始请求的方法。
4xx 客户端错误状态码
- 400 错误的请求 :表示请求有语法错误。
- 401 未授权 :表示客户端未提供有效的凭据。
- 403 禁止 :表示客户端没有权限访问请求的资源。
- 404 未找到 :表示请求的资源不存在。
- 405 方法不被允许 :表示客户端使用了一种不被允许的方法来访问资源。
- 406 无法接受 :表示客户端无法处理服务器返回的内容。
- 407 代理身份验证失败 :表示客户端未能通过代理服务器的认证。
- 408 请求超时 :表示客户端在指定的时间内没有完成请求。
- 409 冲突 :表示客户端尝试创建或修改的资源与服务器上的现有资源冲突。
- 410 已删除 :表示请求的资源已被删除。
- 411 长度需要 :表示客户端请求的资源长度无效。
- 412 前提条件失败 :表示客户端在请求中设置的某个前提条件不满足。
- 413 请求实体过大 :表示客户端发送的请求实体太大。
- 414 请求URI太长 :表示客户端发送的请求URI太长。
- 415 不支持的媒体类型 :表示客户端发送的请求实体的媒体类型不受服务器支持。
- 416 请求范围不满足 :表示客户端请求的范围无效。
- 417 期望失败 :表示服务器无法满足客户端在请求中设置的期望条件。
- 422 不可以处理 :表示服务器无法处理客户端发送的请求实体。
- 423 已锁定 :表示请求的资源已被锁定。
- 424 依赖关系失败 :表示请求的资源与另一个资源存在依赖关系,但另一个资源已被删除。
- 425 过早失败 :表示服务器在接收到客户端请求时,无法立即处理该请求,但可以稍后再试。
- 426 升级必需 :表示客户端需要升级其协议版本才能访问请求的资源。
- 428 前提条件需要 :表示服务器在处理请求之前需要客户端满足某些前提条件。
- 429 太多请求 :表示客户端在给定的时间内发送了太多的请求。
- 431 请求标头字段太长 :表示客户端发送的请求标头字段太长。
- 451 不可用 :表示服务器暂时不可用。
5xx 服务器错误状态码
- 500 内部服务器错误 :表示服务器在处理请求时遇到了意外的错误。
- 501 未实现 :表示服务器无法处理请求。
- 502 网关错误 :表示服务器作为网关或代理时,从上游服务器收到了无效的响应。
- 503 服务不可用 :表示服务器暂时不可用。
- 504 网关超时 :表示服务器作为网关或代理时,没有在指定的时间内从上游服务器收到响应。
- 505 HTTP版本不受支持 :表示服务器不支持客户端请求的HTTP协议版本。
结语
HTTP状态码是服务器对客户端请求的响应结果代码,它有助于用户了解服务器端是正常处理了请求,还是出现了错误 在响应报文内,随状态码一起返回的信息会因方法的不同而发生改变。比如,使用 GET 方法时,对应请求资源的实体会作为响应返回;而使用 HEAD 方法时…