Http 的响应码有哪些? 分别代表的是什么?
HTTP 状态码分为多个类别,下面是常见的 HTTP 状态码及其含义,包括 3xx 重定向状态码的详细区别:
📌 HTTP 状态码分类
| 分类 | 状态码范围 | 说明 |
|---|---|---|
| 1xx | 100-199 | 信息性状态码,表示请求已被接收,继续处理 |
| 2xx | 200-299 | 成功状态码,表示请求成功 |
| 3xx | 300-399 | 重定向状态码,表示客户端需要采取进一步操作 |
| 4xx | 400-499 | 客户端错误,表示请求有问题 |
| 5xx | 500-599 | 服务器错误,表示服务器无法处理请求 |
📌 常见 HTTP 状态码
✅ 1xx(信息响应)
| 状态码 | 含义 | 说明 |
|---|---|---|
| 100 | Continue(继续) | 服务器收到请求的初始部分,客户端可以继续发送请求 |
| 101 | Switching Protocols(切换协议) | 服务器同意客户端的协议升级请求 |
| 102 | Processing(处理中) | 服务器正在处理,但没有完成响应 |
✅ 2xx(成功响应)
| 状态码 | 含义 | 说明 |
|---|---|---|
| 200 | OK(成功) | 请求成功,通常用于 GET、POST 请求的成功响应 |
| 201 | Created(已创建) | 请求成功,服务器创建了新资源(如 POST 创建新用户) |
| 202 | Accepted(已接受) | 请求已接受,但尚未处理完成 |
| 204 | No Content(无内容) | 请求成功但没有数据返回(如 DELETE 成功后) |
✅ 3xx(重定向响应)
| 状态码 | 含义 | 说明 |
|---|---|---|
| 301 | Moved Permanently(永久重定向) | 旧 URL 永久失效,浏览器/爬虫会更新为新地址 |
| 302 | Found(临时重定向) | 旧 URL 仍然有效,每次请求都可能跳转到不同地址 |
| 303 | See Other(查看其他地址) | 重定向到新地址,必须使用 GET 请求 |
| 304 | Not Modified(未修改) | 资源未改变,使用浏览器缓存 |
| 307 | Temporary Redirect(临时重定向) | 类似 302,但 不允许 改变 HTTP 方法(POST 仍然 POST) |
| 308 | Permanent Redirect(永久重定向) | 类似 301,但 不允许 改变 HTTP 方法 |
✅ 4xx(客户端错误)
| 状态码 | 含义 | 说明 |
|---|---|---|
| 400 | Bad Request(错误请求) | 请求格式错误,服务器无法理解 |
| 401 | Unauthorized(未授权) | 需要身份认证(如 API 需要 Token) |
| 403 | Forbidden(禁止) | 服务器理解请求但拒绝执行(如权限不足) |
| 404 | Not Found(未找到) | 服务器找不到请求的资源 |
| 405 | Method Not Allowed(方法不允许) | 请求的方法(如 PUT)不被服务器支持 |
✅ 5xx(服务器错误)
| 状态码 | 含义 | 说明 |
|---|---|---|
| 500 | Internal Server Error(服务器内部错误) | 服务器发生错误,无法完成请求 |
| 502 | Bad Gateway(错误网关) | 服务器作为网关/代理时,收到无效响应 |
| 503 | Service Unavailable(服务不可用) | 服务器暂时不可用(如超载、维护) |
| 504 | Gateway Timeout(网关超时) | 服务器作为网关/代理时,请求超时 |
📌 重点:301 vs 302 vs 303 vs 307 vs 308
| 状态码 | 类型 | 是否永久 | 是否改变 HTTP 方法 | 适用场景 |
|---|---|---|---|---|
| 301 | 永久重定向 | ✅ 是 | ✅ 可能改变(POST → GET) | 网址变更,SEO 友好 |
| 302 | 临时重定向 | ❌ 否 | ✅ 可能改变(POST → GET) | 登录跳转等短期变化 |
| 303 | 临时重定向 | ❌ 否 | ✅ 强制 GET 请求 | 处理表单后跳转 |
| 307 | 临时重定向 | ❌ 否 | ❌ 不改变方法 | POST 不能变成 GET |
| 308 | 永久重定向 | ✅ 是 | ❌ 不改变方法 | POST 不能变成 GET |
相关文章:
Http 的响应码有哪些? 分别代表的是什么?
HTTP 状态码分为多个类别,下面是常见的 HTTP 状态码及其含义,包括 3xx 重定向状态码的详细区别: 📌 HTTP 状态码分类 分类状态码范围说明1xx100-199信息性状态码,表示请求已被接收,继续处理2xx200-299成功…...
深入解析 Linux 系统中 Cron 定时任务的配置与管理
在 Linux 和类 Unix 系统中,cron 是一个非常强大的工具,用于定时执行各种任务,例如自动备份、定时运行脚本和定期清理日志文件。通过合理配置 cron,你可以让很多系统维护任务自动化,从而减轻日常管理的压力。而 cronta…...
关于 IoT DC3 中设备(Device)的理解
在物联网系统中,设备(Device)是一个非常宽泛的概念,它可以指代任何能够接入系统并进行数据交互的实体。包括但不限于手机、电脑、服务器、网关、硬件设备甚至是某些软件程序等所有能接入到该平台的媒介。 内容 定义 目的 示例 …...
golang 版 E签宝请求签名鉴权方式
E签宝 请求签名鉴权方式说明 package utilsimport ("crypto/hmac""crypto/md5""crypto/sha256""encoding/base64""fmt""github.com/gogf/gf/v2/util/gconv" )type Sign struct {secret string }func NewSign(sec…...
QTreeView和QTableView单元格添加超链接
QTreeView和QTableView单元格添加超链接的方法类似,本文仅以QTreeView为例。 在QTableView仿Excel表头排序和筛选中已经实现了超链接的添加,但是需要借助delegate,这里介绍一种更简单的方式,无需借助delegate。 一.效果 二.实现 QHTreeView.h #ifndef QHTREEVIEW_H #def…...
【WB 深度学习实验管理】使用 PyTorch Lightning 实现高效的图像分类实验跟踪
本文使用到的 Jupyter Notebook 可在GitHub仓库002文件夹找到,别忘了给仓库点个小心心~~~ https://github.com/LFF8888/FF-Studio-Resources 在机器学习项目中,实验跟踪和结果可视化是至关重要的环节。无论是调整超参数、优化模型架构,还是监…...
SSM开发(十一) mybatis关联关系多表查询(嵌套查询,举例说明)
目录 一、背景介绍 二、一对一查询(嵌套查询) 三、一对多查询(嵌套查询) 四、嵌套查询效率评估 注:关联查询则是指在一个查询中涉及到多个表的联合查询 一、背景介绍 当对数据库的操作涉及到多张表,这在面向对象语言如Java中就涉及到了对象与对象之间的关联关系。针对多…...
The Simulation技术浅析(六):机器学习
机器学习(Machine Learning)是模拟技术(The Simulation)的重要组成部分,通过从数据中自动学习规律和模式,机器学习能够提升模拟系统的智能化水平,增强其预测、决策和优化能力。 一、监督学习(Supervised Learning) 1. 基本原理 监督学习是指利用标注数据(即输入数…...
apache-poi导出excel数据
excel导出 自动设置宽度,设置标题框,设置数据边框。 excel导出 添加依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>5.2.2</version></dependency>…...
唯一值校验的实现思路(续)
本文接着上一篇文章《唯一值校验的实现思路》,在后端实现唯一值校验。用代码实现。 /*** checkUniqueException[唯一值校验]** param entity 新增或编辑的学生实体* param insert 是否新增,如果是传入true;反之传入false* return void* date…...
ffmpeg基本用法
一、用法 ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... 说明: global options:全局选项,应用于整个 FFmpeg 进程,它们通常不受输入或输出部分的限制。 infile options:输入选…...
MYSQL第四次
目录 题目分析 代码实现 一、修改 Student 表中年龄(sage)字段属性,数据类型由 int 改变为 smallint 二、为 Course 表中 Cno 字段设置索引,并查看索引 三、为 SC 表建立按学号(sno)和课程号ÿ…...
联德胜w801开发板(六)手机蓝牙设置wifi名称和密码
一、概述 W801 是一款集成了 Wi-Fi 和蓝牙功能的芯片,本文将介绍如何利用 W801 的蓝牙功能,实现手机 APP 通过蓝牙配置 W801 连接的 Wi-Fi 名称和密码(即配网功能)。 二、文档查看: demo使用手册这里很清楚…...
Linux:库
目录 静态库 动态库 目标文件 ELF文件 ELF形成可执行 ELF可执行加载 ELF加载 全局偏移量表GOT(global offset table) 库是写好的,成熟的,可以复用的代码 现实中每个程序都要依赖很多的基础的底层库,不可能都是从零开始的 库有两种…...
向量数据库简单对比
文章目录 一、Chroma二、Pinecone/腾讯云VectorDB/VikingDB三、redis四、Elasticsearch五、Milvus六、Qdrant七、Weaviate八、Faiss 一、Chroma 官方地址: https://www.trychroma.com/优点 ①简单,非常简单构建服务。 ②此外,Chroma还具有自…...
大模型基本原理(四)——如何武装ChatGPT
传统的LLM存在几个短板:编造事实、计算不准确、数据过时等,为了应对这几个问题,可以借助一些外部工具或数据把AI武装起来。 实现这一思路的框架包括RAG、PAL、ReAct。 1、RAG(检索增强生成) LLM生成的内容会受到训练…...
从零开始:使用Jenkins实现高效自动化部署
在这篇文章中我们将深入探讨如何通过Jenkins构建高效的自动化部署流水线,帮助团队实现从代码提交到生产环境部署的全流程自动化。无论你是Jenkins新手还是有一定经验的开发者,这篇文章都会为你提供实用的技巧和最佳实践,助你在项目部署中走得…...
Spring Cloud工程完善
目录 完善订单服务 启动类 配置文件 实体类 Controller Service Mapper 测试运行 完成商品服务 启动类 配置文件 实体类 Controller Service Mapper 测试运行 远程调用 需求 实现 1.定义RestTemplate 2.修改order-service中的OrderService 测试运行 Rest…...
SSM仓库物品管理系统 附带详细运行指导视频
文章目录 一、项目演示二、项目介绍三、运行截图四、主要代码1.用户登录代码:2.保存物品信息代码:3.删除仓库信息代码: 一、项目演示 项目演示地址: 视频地址 二、项目介绍 项目描述:这是一个基于SSM框架开发的仓库…...
UI自动化测试中如何处理验证码?
在UI自动化测试中处理验证码是常见的技术挑战,以下是分步解决方案及实际应用建议: 一、验证码处理策略对比 方法实现方式优点缺点适用场景禁用验证码测试环境配置关闭验证码生成简单快捷,零成本无法测试验证码功能本身非验证码相关功能测试万…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
32单片机——基本定时器
STM32F103有众多的定时器,其中包括2个基本定时器(TIM6和TIM7)、4个通用定时器(TIM2~TIM5)、2个高级控制定时器(TIM1和TIM8),这些定时器彼此完全独立,不共享任何资源 1、定…...
