http 状态码

http 状态码

概述

这些状态码只是协议规定,大部分状态码都是开发者根据业务逻辑自定义的。一般情况下,接口一般都是直接全部做 200 处理,然后在响应体中定义 code 或者其他字段来表示业务状态码。进行深度的业务处理。

状态码分类

这些都是响应状态码,用于描述 HTTP 请求的处理结果。

一、1xx 信息性状态码(请求已接收,需要客户端继续处理)

表示服务器已收到请求,需客户端继续操作或等待进一步处理。这类状态码在实际应用中较少见。

  • 100 Continue:服务器已收到请求的初始部分,客户端可继续发送剩余请求体。
  • 101 Switching Protocols:服务器同意切换协议(如从 HTTP 切换到 WebSocket)。
  • 103 Early Hints:服务器提前返回资源提示,用于优化页面加载(HTTP/2 新特性)。

二、2xx 成功状态码(请求已成功处理)

表示客户端请求已被服务器成功接收、理解并处理。

  • 200 OK 请求成功,返回预期资源常规 API 请求成功响应
  • 201 Created 请求已创建新资源(如 POST 请求)新增用户、创建订单后
  • 202 Accepted 请求已接受但尚未处理完成(异步操作)|提交批量任务后
  • 204 No Content 请求成功但无返回内容 删除资源后,无需返回数据
  • 206 Partial Content 成功返回部分资源(用于分片请求)大文件断点续传

三、3xx 重定向状态码(需客户端进一步操作以完成请求)

表示资源位置发生变化,需客户端重定向到新 URL。一般常见 301 和 302 。

  • 301 Moved Permanently:资源永久重定向(SEO 需注意更新链接)。
    例:网站域名变更(旧域名→新域名)。
  • 302 Found:资源临时重定向(默认重定向方式)。
    例:未登录用户访问需要权限的页面,重定向到登录页。
  • 303 See Other:请求的响应需重定向到其他 URL(常用于 POST 请求后的重定向)。
    例:表单提交成功后跳转到结果页。
  • 304 Not Modified:资源未修改,可使用缓存(客户端需验证缓存有效性)。
    例:浏览器请求已缓存的静态资源,服务器确认无需更新。
  • 307 Temporary Redirect:临时重定向(保留原始请求方法)。
    例:HTTPS 强制跳转(HTTP→HTTPS)。
  • 308 Permanent Redirect:永久重定向(保留原始请求方法)。
    例:API 版本升级后,旧接口永久指向新接口。

四、4xx 客户端错误状态码(客户端请求存在错误)

表示客户端请求有误,服务器无法处理。对于前端来说,最应该注意的状态码。

  • 400 Bad Request 请求格式错误或参数无效 发送 JSON 格式错误、缺少必填参数
  • 401 Unauthorized 未授权(需身份验证)登录 token 过期、未提供认证信息
  • 403 Forbidden 禁止访问(无权限)用户权限不足、IP 被封禁
  • 404 Not Found 资源不存在 访问 URL 错误、资源被删除
  • 405 Method Not Allowed 请求方法不允许,对仅支持 GET 的接口发送 POST 请求
  • 408 Request Timeout 请求超时,服务器未在规定时间内收到请求
  • 429 Too Many Requests 请求频率过高(限流) 短时间内多次请求触发频率限制
  • 415 Unsupported Media Type 不支持的媒体类型 发送服务器无法解析的格式(如请求体为 text/plain 但服务器要求 JSON)

五、5xx 服务器错误状态码(服务器处理请求时发生错误)

表示服务器在处理请求时内部出错,无法完成请求。常见于后端错误。

  • 500 Internal Server Error:服务器内部错误(最常见的服务器端异常)。
    例:代码执行报错、数据库连接失败。
  • 501 Not Implemented:服务器不支持请求的功能。
    例:请求服务器未实现的 HTTP 方法或 API 接口。
  • 502 Bad Gateway:网关错误(代理服务器获取不到上游服务器的响应)。
    例:Nginx 代理后端服务时,后端服务崩溃。
  • 503 Service Unavailable:服务不可用(服务器暂时无法处理请求)。
    例:服务器过载、正在维护(常伴随 Retry-After 响应头)。
  • 504 Gateway Timeout:网关超时(代理服务器等待上游服务器响应超时)。
    例:后端服务处理缓慢,代理服务器等待超时而返回错误。
  • 511 Network Authentication Required:需要网络认证(客户端未完成网络层认证)。
    例:公共 WiFi 的认证页面跳转前返回此状态码。
相关推荐
TG:@yunlaoda360 云老大2 小时前
华为云国际站代理商申请跨账号代维权限的流程复杂吗?
网络·数据库·华为云
小张的博客之旅2 小时前
“复兴杯”2025第五届大学生网络安全精英赛 (排位赛wp)
网络·安全·web安全
"YOUDIG"2 小时前
全能安全工具箱:智能密码生成、高强度文件加密与动态二维码生成的一站式平台
服务器·网络·安全
一颗青果2 小时前
序列化与反序列化
网络·网络协议·tcp/ip
安全渗透Hacker3 小时前
新一代特征扫描器afrog与经典引擎Xray深度解析
网络·安全·web安全·网络安全·自动化·系统安全·安全性测试
Xの哲學3 小时前
Linux IPC机制深度剖析:从设计哲学到内核实现
linux·服务器·网络·算法·边缘计算
代码游侠3 小时前
应用——Linux Socket编程
运维·服务器·开发语言·笔记·网络协议·学习
幺零九零零3 小时前
Docker底层-Namespaces(网络隔离)
网络·docker·容器
代码游侠4 小时前
学习笔记——sqlite3 数据库基础
linux·运维·网络·数据库·笔记·学习·sqlite