HTTP 状态码是服务器向客户端返回的三位数代码,用于表示请求的处理结果和状态。以下是常见的分类及代表含义:
1xx 信息性状态码
表示请求已接收,需要进一步处理。
- 100 Continue:请求的初始部分已接收,客户端可继续发送请求。
- 101 Switching Protocols:服务器同意切换协议(如升级到 WebSocket)。
2xx 成功状态码
表示请求已成功处理。
- 200 OK:请求成功。
- 201 Created:资源创建成功(如 POST 请求)。
- 204 No Content:请求成功,但无内容返回(常用于 DELETE 请求)。
3xx 重定向状态码
表示需要客户端进一步操作以完成请求。
- 301 Moved Permanently:资源永久移动,需用新 URL 访问。
- 302 Found:资源临时移动,重定向到新 URL。
- 304 Not Modified:客户端缓存有效,无需重新传输资源。
4xx 客户端错误状态码
表示客户端请求有误。
- 400 Bad Request:请求语法错误或参数无效。
- 401 Unauthorized:未提供认证信息或认证失败。
- 403 Forbidden:服务器拒绝访问(权限不足)。
- 404 Not Found:请求的资源不存在。
- 429 Too Many Requests:请求频率过高,被限制。
5xx 服务器错误状态码
表示服务器处理请求时出错。
- 500 Internal Server Error:服务器内部错误(通用错误)。
- 502 Bad Gateway:服务器作为网关时,从上游服务器收到无效响应。
- 503 Service Unavailable:服务器暂时不可用(如维护中)。
常见状态码示例
- 200 OK:网页正常打开。
- 404 Not Found:网页不存在。
- 500 Internal Server Error:服务器崩溃或代码错误。
- 301/302:网页跳转(如旧链接跳转到新链接)。
状态码的作用
- 帮助开发者调试问题(如 404 提示资源缺失,500 提示服务器问题)。
- 指导客户端行为(如 301 触发浏览器自动重定向)。
- 优化缓存策略(如 304 避免重复下载已缓存资源)。
如果遇到特定状态码,可根据分类和具体代码进一步排查问题原因。