http都有哪些状态码?

HTTP状态码有很多,它们被分为五类,由三位数字组成,首位数字定义了类别:

  • 1xx (信息性): 表示请求已被接收,继续处理。

    • 100 Continue: 服务器已收到请求头,客户端应当继续发送请求体(在初始请求包含Expect: 100-continue情况下)。
    • 101 Switching Protocols: 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端它会切换到另一个协议。
    • 102 Processing (WebDAV): 表示处理将花费较长时间,避免客户端超时。
    • 103 Early Hints: 服务器先返回一些响应头,让客户端提前开始渲染。
  • 2xx (成功): 表示请求成功被服务器接收、理解并接受。

    • 200 OK: 请求成功。最常见的成功状态响应码。
    • 201 Created: 已创建。成功请求并创建了新的资源。
    • 202 Accepted: 已接受。服务器已接受请求,但尚未处理。
    • 203 Non-Authoritative Information: 非授权信息。服务器成功处理了请求,但返回的信息可能来自另一来源。
    • 204 No Content: 无内容。服务器成功处理,但未返回内容。
    • 205 Reset Input: 重置内容。服务器处理成功,用户代理应该重置文档视图。
    • 206 Partial Content: 部分内容。服务器成功处理了部分 GET 请求。
    • 207 Multi-Status (WebDAV): 提供包含多个资源状态的 XML。
    • 208 Already Reported (WebDAV): 成员已经在之前的 DAV: propstat 响应中枚举过。
    • 226 IM Used: 服务器已经完成了对资源的 GET 请求,响应是应用于当前实例的操作结果的表示。
  • 3xx (重定向): 表示要完成请求必须进行更进一步的操作。通常,这些状态响应码用来重定向。

    • 300 Multiple Choices: 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择。
    • 301 Moved Permanently: 永久移动。请求的资源已被永久的移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个 URI 之一。
    • 302 Found (Previously "Moved temporarily"): 临时移动。与301 Moved Permanently类似,但它表示资源只是临时移动。
    • 303 See Other: 查看其他地址。与301 Moved Permanently类似,但它表示资源只是临时移动。客户端应当以GET方法获取资源。
    • 304 Not Modified: 未修改。所请求的资源未修改,服务器返回 304 状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源。
    • 307 Temporary Redirect: 临时重定向。与302 Found类似,但不允许 HTTP 方法被改变。
    • 308 Permanent Redirect: 永久重定向。与301 Moved Permanently类似,但不允许 HTTP 方法被改变。
  • 4xx (客户端错误): 这些状态码表示请求可能出错,妨碍了服务器的处理。

    • 400 Bad Request: 错误请求。客户端请求的语法错误,服务器无法理解。
    • 401 Unauthorized: 未授权,需要进行身份验证。
    • 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: 永久
posted @   王铁柱6  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示