HTTP 响应码大全

article/2025/9/1 9:32:06

HTTP 状态码(HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。它由 RFC2616 规范定义的,并得到 RFC2518、RFC2817、RFC2295、RFC2774 与 RFC4918 等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。所示的消息短语是典型的,但是可以提供任何可读取的替代方案。 除非另有说明,状态码是HTTP/1.1标准(RFC7231)的一部分。HTTP 状态码的官方注册表由互联网号码分配局维护。微软互联网信息服务(Microsoft Internet Information Services)有时会使用额外的十进制子代码来获取更多具体信息,但是这些子代码仅出现在响应有效内容和文档中,而不是代替实际的HTTP状态代码。

一、1xx 表示【临时响应】并需要请求者继续执行操作的状态代码

100(继续)请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。
101(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换。

二、2xx 表示【成功】处理了请求的状态代码

200(成功)服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。
201(已创建)请求成功并且服务器创建了新的资源。
202(已接受)服务器已接受请求,但尚未处理。
203(非授权信息)服务器已成功处理了请求,但返回的信息可能来自另一来源。
204(无内容)服务器成功处理了请求,但没有返回任何内容。
205(重置内容)服务器成功处理了请求,但没有返回任何内容。
206(部分内容)服务器成功处理了部分 GET 请求。

三、3xx 表示要完成请求,需要进一步操作。通常,这些状态代码用来【重定向】

300(多种选择)针对请求,服务器可执行多种操作。服务器可根据请求者(user agent)选择一项操作,或提供操作列表供请求者选择。
301(永久移动)请求的网页已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。
302(临时移动)服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
303(查看其他位置)请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
304(未修改)自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。
305(使用代理)请求者只能使用代理访问请求的网页。如果服务器返回此响应,还表示请求者应使用代理。
307(临时重定向)服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。

四、4xx 表示【请求可能出错】,妨碍了服务器的处理

400(错误请求)表示客户端请求的语法错误,服务器无法理解,例如 url 含有非法字符、json 格式有问题。
401(未授权)请求要求身份验证。对于需要登录的网页,服务器可能返回此响应。
402表示保留,将来使用。
403(禁止)表示服务器理解请求客户端的请求,但是拒绝请求。
404(未找到)服务器无法根据客户端的请求找到资源(网页)。
405(方法禁用)禁用请求中指定的方法。
406(不接受)无法使用请求的内容特性响应请求的网页。
407(需要代理授权)此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理。
408(请求超时)服务器等候请求时发生超时。
409(冲突)服务器在完成请求时发生冲突。服务器必须在响应中包含有关冲突的信息。
410(已删除)如果请求的资源已永久删除,服务器就会返回此响应。
411(需要有效长度)服务器不接受不含有效内容长度标头字段的请求。
412(未满足前提条件)服务器未满足请求者在请求中设置的其中一个前提条件。
413(请求实体过大)表示响应实在太大。服务器拒绝处理当前请求,请求超过服务器所能处理和允许的最大值。
414(请求的 URI 过长)请求的 URI(通常为网址)过长,服务器无法处理。
415(不支持的媒体类型)请求的格式不受请求页面的支持。
416(请求范围不符合要求)如果页面无法提供请求的范围,则服务器会返回此状态代码。
417(未满足期望值)在请求头 Expect 指定的预期内容无法被服务器满足(力不从心)。
418表示我是一个茶壶。超文本咖啡馆控制协议,但是并没有被实际的 HTTP 服务器实现。
420表示方法失效
422表示不可处理的实体。请求格式正确,但是由于含有语义错误,无法响应。

五、5xx 表示【服务器】在尝试处理请求时发生内部错误。这些错误可能是服务器本身的错误,而不是请求出错

500(服务器内部错误)服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。
501(尚未实施)服务器不具备完成请求的功能。例如,服务器无法识别请求方法时可能会返回此代码。
502(错误网关)服务器作为网关或代理,从上游服务器收到无效响应。
503(服务不可用)服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态。
504(网关超时)服务器作为网关或代理,但是没有及时从上游服务器收到请求。
505(HTTP 版本不受支持)服务器不支持请求中所用的 HTTP 版本。

常见的 http 响应码:

200 - 服务器成功返回网页
404 - 请求的网页不存在
503 - 服务不可用


http://chatgpt.dhexx.cn/article/VRL0DuLk.shtml

相关文章

【从零开始学架构-李运华】06|复杂地来源:可扩展性

可扩展性指系统为了应对将来需求的变化而提供的一种扩展能力,新需求出现时系统不需要或者仅需要少量修改就可以支持,无需整个系统重构或者重建。 面向对象就是为了解决可扩展性,后来的设计模式更是将可扩展性做到了极致。 具备良好扩展性的两…

【从零开始学架构-李运华】07|低成本、安全、规模

低成本 高性能和高可用架构通常都是增加服务器来满足要求,但低成本正相反,当然也不是首要目标。 往往“创新”才能达到低成本的目标!! 技术创新: NoSQL(Memcache、Redis)等是为了解决关系型数…

阿里P9李运华:想成为架构师,你必须知道CAP理论

CAP定理(CAP theorem)又被称作布鲁尔定理(Brewers theorem),是加州大学伯克利分校的计算机科学家埃里克布鲁尔(Eric Brewer)在2000年的ACM PODC上提出的一个猜想。2002年,麻省理工学…

笔记——专访李运华:程序员如何在技术上提升自己

原文链接:http://www.csdn.net/article/2014-10-20/2822190 摘要: 专访李运华:程序员如何在技术上提升自己 方法: 1 写博客 2 链式学习:从一个点不断学习相关的知识 3 闭环学习:了解整个功能或业务的全流…

【从零开始学架构-李运华】09|架构设计原则案例

【淘宝】 个人网站 > Oracle/支付宝/旺旺 > Java时代1.0 > Java时代2.0 > Java时代3.0 > 分布式时代 买一个快速可用、快速开发的系统。 MySQL升级Oracle,买性能 3. PHP切换Java,重构网站 4. 增加各种组件框架优化性能控制成本 5. 去I…

【从零开始学架构-李运华】05|复杂度来源:高可用

高可用的定义 系统无中断地执行其功能的能力,代表系统的可用性成都,是进行系统设计时的准则之一。 虽然方案五花八门但本质就是“冗余”! 与高性能的区别 高性能增加机器在于扩展处理性能,高可用在于增加冗余单元防止中断。 计算…

【从零开始学架构-李运华】04|复杂度来源:高性能

复杂度的六个来源之一:高性能 运算性能迅猛发展、软件复杂度发展、硬件存储发展。 用来代替旧技术的新技术才会给软件系统带来复杂度,而用来淘汰旧技术的新技术则不用担心。 1.单台计算机 手工操作->批处理->进程->分时多进程->进程通信-&…

【从零开始学架构-李运华】03|架构设计的目的

架构设计的误区 系统不一定需要架构设计; 架构设计不一定能提升开发效率; 好的架构设计能促进业务发展; 不是所有系统都需要架构设计; 等等…… 架构设计的真正目的 为了解决软件复杂度带来的问题 如何下手架构设计?…

李运华《从零开始学架构》——架构设计三原则

课程链接 https://time.geekbang.org/column/intro/100006601?utm_sourcetime_web&utm_mediummenu&utm_termtimewebmenu 分割线 前面几期专栏,我跟你系统的聊了架构设计的主要目的是为了解决软件系统复杂度带来的问题,并分析了复杂度的来源…

专访李运华:程序员如何在技术上提升自己

摘要:社区之星第56期采访了UC的软件工程师李运华,他先后经历了电信行业和互联网行业。在本次采访中,李老师分享了他的职场经历、团队管理经验、程序员提升自己的方法和应具备的素养,以及谈了对面向对象和编程语言看法。 李运华&a…

阿里P9李运华:架构到底是指什么?

你好,我是李运华。 2018 年,我发布了《从 0 开始学架构》这门课程,分享了我之前在电信业务和移动互联网业务方面的经验和感悟。 后来,我转岗去了蚂蚁国际,从事更加复杂的支付业务。为什么说支付业务更加复杂&#xf…

Rust之fluid用法(fltk ui 设计器)

fl2rust 用法 $ cargo install fl2rust然后运行&#xff1a; $ fl2rust <fl file>.fl > <output file>.rs 要通过 cargo 实现自动化&#xff0c;我们可以通过将 fl2rust 添加到构建依赖项中来将其用作库&#xff1a; # Cargo.toml [dependencies] fltk &q…

FLTK学习笔记2-回调函数

FLTK学习笔记2-回调函数 回调函数为控件添加回调函数程序示例 回调函数 回调函数&#xff08;Callback&#xff09;简单说来就是一个以函数指针的方式被调用的函数。 考虑如下情况&#xff0c;我们编写了一个整数排序算法函数mySort&#xff1a; void mySort(std::vector<…

rust 使用fltk 的小问题

rust 使用fltk 的小问题 windowns下进行编译使用cargo build --release 打包出现以下问题 最近有需求写一个简单的桌面应用程序&#xff0c;正好使用rust来练练手&#xff0c;中间碰到一些问题&#xff0c;尤其fltk 打包有个cmd黑框就很恶心。只记录一些国内网络上资料较少的问…

gmsh+fltk配置过程

本文主要讲解如何利用cmake进行配置带图形界面的gmsh,因为gmsh给出的qt范例只有简单的显示功能&#xff0c;而对 fltk中编写了较完整的功能&#xff0c;所以利用fltk进行说明&#xff0c;如需qt可参考链接。本文使用的编译器是vs2019 首先为了编译成功gmsh软件&#xff0c;我们…

FLTK学习笔记1-绘制基本控件(按钮、文本输入、容器)

FLTK学习笔记1-绘制基本控件&#xff08;按钮、文本输入、容器&#xff09; FLTK中的坐标FLTK常用控件按钮控件文本控件容器控件 绘制基本控件 FLTK中的坐标 在FLTK中坐标均为正整数&#xff0c;其单位是像素&#xff08;pixel&#xff09;&#xff0c;原点&#xff08;x0, y0…

FLTK中的字体

FLTK中的字体 字体在FLTK中的表示获取系统的字体编号表程序示例 字体在FLTK中的表示 在FLTK中&#xff0c;系统中的每一种字体都对应着一个整数类型(严格来讲是Fl_Font类型&#xff0c;但Fl_Font本身就是int的别名)的字体编号。例如&#xff0c;在本人的系统中“楷体”所对应的…

FLTK学习笔记4-在FLTK中显示图片(上)

FLTK学习笔记4-在FLTK中显示图片&#xff08;上&#xff09; Fl_JPEG_Image和Fl_PNG_ImageFl_Shared_Image程序示例 在FLTK中&#xff0c;并不是任何时候都可以绘图的&#xff08;当然也包括绘制图片&#xff09;&#xff0c;一般来讲我们只能在控件类中的 draw()方法中绘制所…

C++轻量级跨平台桌面GUI库FLTK的简单使用

C的跨平台桌面GUI库有很多&#xff0c;大体上分成两种流派&#xff1a;retained mode和immediate mode。 其中前者是主流的桌面GUI机制框架&#xff0c;包括&#xff1a;Qt、wxwidgets、gtk、juce等后者是一些游戏引擎编辑器常用的GUI机制框架&#xff0c;包括&#xff1a;img…

开源跨平台GUI库Fltk在Deepin Linux下的使用

开源跨平台GUI库Fltk在Deepin Linux下的使用 前言一、下载安装二、样例使用三、自编代码四、后记 前言 在互联网应用漫天的现在&#xff0c;实体企业、工厂却绕不开大量的桌面应用&#xff0c;开发工具有恐龙C#&#xff0c;有难用的MFC&#xff0c;也有没落的Delphi&#xff0…