Skip to content

状态码分类(第一个数字)

  • 1xx (信息性状态码):请求已被接收,继续处理。
  • 2xx (成功状态码):请求已成功被服务器接收、理解并接受。
  • 3xx (重定向状态码):需要客户端采取进一步的操作才能完成请求。
  • 4xx (客户端错误状态码):请求包含语法错误或无法完成请求。
  • 5xx (服务器错误状态码):服务器在处理请求的过程中发生了错误。

200 OK(成功)

  • 含义:请求成功。这是最常遇到的状态码,表示一切正常。
  • 场景:GET 请求成功获取资源,POST 请求成功提交数据。

201 Created

  • 含义:请求成功,并且服务器创建了新的资源。
  • 场景:POST 或 PUT 请求成功后,服务器创建了一个新条目。

202 Accepted

  • 含义:请求已被接受,但尚未处理完成。处理可能异步进行。
  • 场景:一个需要长时间运行的任务(如报告生成),服务器先接受请求,后续处理。

204 No Content

  • 含义:请求成功,但响应报文中没有实体的主体部分(即没有返回内容)。
  • 场景:DELETE 请求成功,或表单提交后不需要跳转页面。

301 Moved Permanently(永久重定向)

  • 含义:永久重定向。请求的资源已被永久移动到新的 URL。
  • 场景:网站改版,旧的网址永久指向新的网址。对搜索引擎优化(SEO)友好。

302 Found(临时重定向)

  • 含义:临时重定向。请求的资源临时从不同的 URL 响应。
  • 场景:用户未登录时访问个人中心,临时重定向到登录页面。

304 Not Modified(资源未被修改,使用本地缓存)

  • 含义:资源未被修改。客户端有缓存的版本,服务器告知其可直接使用它。
  • 场景:浏览器第二次访问网站时,会询问服务器资源是否过期,如果未过期则返回 304,使用本地缓存。这不算错误,是性能优化的体现。

400 Bad Request(错误的请求)

  • 含义:错误的请求。服务器无法理解请求的格式,客户端不应重复提交此请求。
  • 场景:前端提交的 JSON 数据格式错误,或者请求参数有误。

401 Unauthorized(未认证)

  • 含义:未认证。请求要求用户的身份认证。
  • 场景:需要登录的 API 接口,用户没有提供有效的 token 或 cookie。

403 Forbidden(禁止访问)

  • 含义:禁止访问。服务器理解请求,但拒绝执行。
  • 场景:用户已登录(认证成功),但其权限不足(如普通用户试图访问管理员后台)。

404 Not Found(未找到)

  • 含义:未找到。服务器无法找到请求的资源。
  • 场景:最常见的错误之一,用户请求了服务器上不存在的 URL。

405 Method Not Allowed(方法不被允许)

  • 含义:方法不被允许。请求行中指定的请求方法不能被用于请求相应的资源。
  • 场景:一个只接受 GET 请求的接口,你用 POST 方法去访问。

500 Internal Server Error(服务器内部错误)

  • 含义:服务器内部错误。服务器遇到了一个未曾预料的情况,导致了它无法完成对请求的处理。
  • 场景:服务器端代码出现未捕获的异常(如 Java NullPointerException, PHP 语法错误等)。

502 Bad Gateway(错误的网关)

  • 含义:错误的网关。服务器作为网关或代理,从上游服务器收到无效响应。
  • 场景:Nginx 作为反向代理,后面的应用服务器(如 Tomcat)挂了或没有响应。

503 Service Unavailable(服务不可用)

  • 含义:服务不可用。服务器当前无法处理请求(由于超载或系统维护)。
  • 场景:网站访问量过大,服务器忙不过来;或者服务器正在进行维护升级。

504 Gateway Timeout(网关超时)

  • 含义:网关超时。服务器作为网关或代理,没有及时从上游服务器收到请求。
  • 场景:Nginx 后面的应用服务器处理时间过长,超过了 Nginx 配置的等待时间。

页脚:版权前显示的信息