HTTP Status Codes:

在前面的任务中,您了解到,当HTTP服务器响应时,第一行总是包含一个状态码,通知客户机请求的结果以及可能的处理方式。这些状态码可以分为5个不同的范围:

100–199 — 信息响应

  • 此类状态码用于告知客户端:请求的首段内容已被接收,请继续发送剩余请求数据。目前这类编码已极少使用。

200–299 — 成功响应

  • 该区间状态码用于提示客户端,其发送的请求已正常处理完成。

300–399 — 重定向

  • 用于将客户端请求跳转至其他资源,可跳转至同一网站的其他页面,或完全不同的外部网站。

400–499 — 客户端错误

  • 用以通知客户端,本次请求存在错误,无法正常处理。

500–599 — 服务端错误

  • 专属标识服务器侧发生的故障,通常代表服务器处理请求时出现严重异常问题。

Common HTTP Status Codes:

HTTP 状态码种类繁多,更何况各类应用程序甚至还可以自定义专属状态码。接下来我们就来讲解日常最常遇到的主流 HTTP 响应状态码。

200 - 请求成功(OK)

请求已正常完成。

201 - 已创建(Created)

资源创建成功(例如:新建用户、发布博客文章)。

301 - 永久重定向(Moved Permanently)

将客户端浏览器跳转至新页面,同时告知搜索引擎该页面已永久迁移至新地址。

302 - 临时跳转(Found)

与永久重定向类似,但顾名思义,该变更仅为临时生效,后续地址可能再次调整。

400 - 错误请求(Bad Request)

告知客户端请求存在错误或缺失内容。常见场景:服务器需要特定参数,但客户端未携带提交。

401 - 未授权(Not Authorised)

需完成身份验证后才可访问该资源,最常见验证方式为账号密码登录。

403 - 禁止访问(Forbidden)

无论是否登录,你均无权限访问此资源。

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

当前资源不支持该请求方式。示例:向「注册账号」接口发送 GET 请求,而该接口仅允许使用 POST 请求。

404 - 页面不存在(Page Not Found)

你访问的页面或资源不存在。

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

服务器处理请求时出现未知异常,无法正常响应。

503 - 服务不可用(Service Unavailable)

服务器当前无法处理请求,原因通常为服务器过载、宕机或正在维护。

如果你属于视觉型学习者,还可以访问优质网站 HTTP Cats来学习各类状态码。现在,请点击右侧的「查看网站」按钮,看看这些 HTTP 状态提示在浏览器中实际显示的效果。

【题目答案】:

What response code might you receive if you've created a new user or blog post article?

201

What response code might you receive if you've tried to access a page that doesn't exist?

404

What response code might you receive if the web server cannot access its database and the application crashes?

503

What response code might you receive if you try to edit your profile without logging in first?

401

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐