【http状态码】

在网络通信中,状态码用于表示服务器对客户端请求的处理结果。常见的状态码主要分为五大类,以下是详细介绍:

1xx(信息性状态码)

这类状态码表示服务器已接收到请求,但需要客户端继续执行操作才能完成请求。

  • 100 Continue:表示客户端应继续发送请求的剩余部分。例如,客户端在发送一个包含大量数据的 POST 请求时,可以先发送一个带有 Expect: 100-continue 头的请求,服务器返回 100 状态码后,客户端再发送剩余的数据。
  • 101 Switching Protocols:表示服务器根据客户端的请求,正在切换协议。比如,客户端请求从 HTTP 切换到 WebSocket 协议,服务器返回 101 状态码表示同意切换。

2xx(成功状态码)

表示请求已成功被服务器接收、理解并接受。

  • 200 OK:最常见的成功状态码,表示请求已成功处理,并且服务器返回了请求的数据。例如,浏览器请求一个网页,服务器返回 200 状态码以及网页的 HTML 内容。
  • 201 Created:表示请求成功并且服务器创建了新的资源。例如,客户端发送一个 POST 请求来创建一个新的用户账户,服务器成功创建后返回 201 状态码,并在响应头中包含新创建资源的 URI。
  • 202 Accepted:表示请求已被接受,但尚未处理完成。通常用于异步处理场景,比如服务器需要较长时间来处理一个复杂的请求,先返回 202 状态码,后续再通过其他方式通知客户端处理结果。
  • 204 No Content:表示服务器成功处理了请求,但没有返回任何内容。例如,客户端发送一个 DELETE 请求删除一个资源,服务器成功删除后返回 204 状态码,浏览器不会刷新页面。

3xx(重定向状态码)

表示需要客户端采取进一步的操作才能完成请求,通常用于重定向。

  • 301 Moved Permanently:表示请求的资源已被永久移动到新位置,后续请求应使用新的 URI。例如,一个网站更换了域名,服务器返回 301 状态码,并在响应头中包含新的域名,浏览器会自动跳转到新域名。
  • 302 Found(临时重定向):表示请求的资源临时移动到新位置,后续请求仍应使用原来的 URI。常用于服务器维护或临时调整资源位置。
  • 304 Not Modified:表示客户端的缓存资源仍然是有效的,服务器不会返回新的资源内容。当客户端发送带有 If-Modified-SinceIf-None-Match 头的请求时,如果资源未被修改,服务器返回 304 状态码,提高资源加载效率。

4xx(客户端错误状态码)

表示客户端发送的请求有错误,服务器无法处理。

  • 400 Bad Request:表示客户端请求有语法错误或参数不正确,服务器无法理解。例如,客户端发送的请求头格式错误或请求参数缺失。
  • 401 Unauthorized:表示请求要求用户的身份认证,但客户端未提供有效的认证信息。例如,访问一个需要登录的页面,但未提供用户名和密码。
  • 403 Forbidden:表示服务器理解请求,但拒绝执行。通常是因为客户端没有访问该资源的权限。例如,尝试访问一个受保护的文件或目录。
  • 404 Not Found:表示服务器找不到请求的资源。这是最常见的客户端错误之一,通常是因为请求的 URL 错误或资源已被删除。
  • 405 Method Not Allowed:表示请求方法(如 GET、POST、PUT 等)不被服务器允许。例如,一个资源只支持 GET 请求,但客户端发送了 POST 请求。

5xx(服务器错误状态码)

表示服务器在处理请求时发生了错误。

  • 500 Internal Server Error:表示服务器遇到了一个未曾预料的状况,导致无法完成对请求的处理。这是一个通用的服务器错误状态码,可能是由于服务器代码错误、数据库连接问题等原因引起。
  • 502 Bad Gateway:表示服务器作为网关或代理,从上游服务器收到无效响应。例如,服务器作为反向代理,向后端服务器发送请求,但后端服务器返回了错误的响应。
  • 503 Service Unavailable:表示服务器目前无法使用(由于超载或停机维护)。通常,服务器会在响应头中包含一个 Retry-After 字段,告诉客户端何时可以再次尝试请求。
  • 504 Gateway Timeout:表示服务器作为网关或代理,但是没有及时从上游服务器收到请求。例如,服务器向后端服务器发送请求,但等待时间过长,超过了设定的超时时间。

注:内容由AI生成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

¥-oriented

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值