当前位置: 首页 > news >正文

状态码··

目录

一、状态码分类(按首位数字)

二、常见状态码详解

1xx(信息性状态码)

2xx(成功状态码)

3xx(重定向状态码)

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

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

三、状态码记忆技巧

四、如何处理状态码?

在计算机网络中,状态码(Status Code)是服务器向客户端返回的三位数数字代码,用于表示请求的处理结果。以下是常见的 HTTP 状态码分类及详细说明,帮助你快速理解不同状态码的含义和用途:

一、状态码分类(按首位数字)

分类描述
1xx(信息性状态码)服务器已接收请求,需要客户端继续操作。
2xx(成功状态码)请求已成功处理。
3xx(重定向状态码)需要客户端进一步操作以完成请求(如跳转新 URL)。
4xx(客户端错误状态码)客户端请求存在错误(如参数错误、权限不足)。
5xx(服务器错误状态码)服务器处理请求时发生内部错误。

二、常见状态码详解

1xx(信息性状态码)
  • 100 Continue

    • 含义:服务器已收到请求的第一部分(如请求头),客户端可以继续发送剩余部分(如请求体)。
    • 场景:常用于需要分块发送数据的长请求(如文件上传)。
  • 101 Switching Protocols

    • 含义:服务器切换协议(如从 HTTP 切换到 WebSocket)。
    • 场景:WebSocket 握手时常见。
2xx(成功状态码)
  • 200 OK

    • 含义:请求成功,返回预期结果(如 HTML 页面、JSON 数据)。
    • 场景:正常请求的默认成功响应。
  • 201 Created

    • 含义:请求已成功执行,并创建了新资源(如新建用户、文件)。
    • 场景:RESTful API 中创建资源时返回(如POST请求)。
  • 204 No Content

    • 含义:请求成功,但无需返回内容(如删除操作后的响应)。
    • 场景:常用于删除资源或执行无返回值的操作。
3xx(重定向状态码)
  • 301 Moved Permanently

    • 含义:资源永久迁移至新 URL,后续请求应使用新 URL。
    • 场景:网站域名变更(如从http迁移至https)。
  • 302 Found(临时重定向)

    • 含义:资源临时位于新 URL,客户端应使用原 URL 再次请求。
    • 场景:登录成功后跳转至首页(不改变原有请求意图)。
  • 307 Temporary Redirect

    • 含义:与 302 类似,但要求客户端保留请求方法(如POST不转为GET)。
    • 场景:更规范的临时重定向,避免方法改变导致的副作用。
  • 308 Permanent Redirect

    • 含义:与 301 类似,但要求客户端保留请求方法(如POST不转为GET)。
    • 场景:永久重定向时保留请求方法的完整性。
4xx(客户端错误状态码)
  • 400 Bad Request

    • 含义:客户端请求语法错误(如参数缺失、格式错误)。
    • 场景:前端提交无效表单、API 参数不正确。
  • 401 Unauthorized

    • 含义:请求需要身份验证(如未提供 Token、用户名密码错误)。
    • 场景:访问需要登录的接口,未认证时返回。
  • 403 Forbidden

    • 含义:客户端已认证,但无权限访问资源(如权限不足、IP 被封禁)。
    • 场景:普通用户尝试访问管理员接口。
  • 404 Not Found

    • 含义:请求的资源不存在(如 URL 错误、资源已删除)。
    • 场景:访问不存在的页面或 API 路径。
  • 405 Method Not Allowed

    • 含义:请求方法不被允许(如对仅支持GET的接口使用POST)。
    • 场景:调用 API 时使用错误的请求方法(如用GET提交表单)。
  • 413 Payload Too Large

    • 含义:请求体过大,超出服务器限制(如文件上传大小超限)。
    • 场景:上传大文件时超出服务器配置的最大容量。
  • 429 Too Many Requests

    • 含义:客户端请求频率过高,触发限流机制。
    • 场景:短时间内多次请求接口(如暴力破解、爬取数据)。
5xx(服务器错误状态码)
  • 500 Internal Server Error

    • 含义:服务器内部错误(如代码异常、数据库连接失败)。
    • 场景:后端代码抛出未处理的异常,需排查服务器日志。
  • 502 Bad Gateway

    • 含义:服务器作为网关或代理时,从上游服务器收到无效响应(如 Nginx 代理的后端服务崩溃)。
    • 场景:微服务架构中,下游服务不可用导致上游代理返回错误。
  • 503 Service Unavailable

    • 含义:服务器暂时无法处理请求(如过载、正在维护)。
    • 场景:高并发下服务器资源耗尽,或系统正在升级维护。
  • 504 Gateway Timeout

    • 含义:服务器作为网关或代理时,等待上游服务器响应超时。
    • 场景:下游服务响应过慢,导致上游代理超时。

三、状态码记忆技巧

  • 2xx:成功(想到 “200 OK”)。
  • 3xx:重定向(301/302 跳转)。
  • 4xx:客户端错(404 找不到,403 没权限)。
  • 5xx:服务器错(500 内部错误,503 服务不可用)。

四、如何处理状态码?

  1. 客户端(浏览器 / 前端)

    • 根据状态码调整用户提示(如 “404 页面不存在”、“500 服务器开小差”)。
    • 对重定向状态码(3xx)自动跳转新 URL。
    • 对 429 限流,提示用户 “请稍后重试”。
  2. 服务器(后端)

    • 合理设计状态码,避免返回模糊的 500 错误(如用 400 提示参数错误)。
    • 记录 5xx 错误日志,快速定位代码或环境问题。

相关文章:

  • 从零开始构建一个区块链应用:技术解析与实践指南
  • 【Fargo】razor框架调用mediasoup的发送和接收能力
  • 英语写作中“随着……的出现”with the advent of 的用法
  • 线性代数中的向量与矩阵:AI大模型的数学基石
  • 内存越界(Memory Out-of-Bounds)详解
  • SGlang 推理模型优化(PD架构分离)
  • Linux Shell编程(九)
  • Android12 launcher3修改App图标白边问题
  • 如何利用夜莺监控对Redis Cluster集群状态及集群中节点进行监控及告警?
  • JVM学习(五)--执行引擎
  • Manus AI突破多语言手写识别的技术壁垒的关键方法
  • Docker:容器化技术
  • 数据库MySQL进阶
  • 论文阅读笔记——Emerging Properties in Unified Multimodal Pretraining
  • 通过shell脚本检测服务是否存活并进行邮件的通知
  • 开源视频监控前端界面MotionEye
  • 视频剪辑 VEGAS - 配置视频片段保持原长宽比
  • 单片机中断系统工作原理及定时器中断应用
  • 【Excel 支持正则的方法】解决VBA引入正则的方法和步骤
  • Lesson 22 A glass envelope
  • 济南做兼职网站/百度百科推广费用
  • 做b2b b2c型的混合网站/百度极速版下载安装最新版
  • 西安网站搭建费用/深圳网站优化培训
  • 带论坛的网站模板下载/百度推广怎么收费的
  • 网站会员注册系统怎么做视频/线上推广如何引流
  • 网站开发 技术路线/网站seo好学吗