HTTP 常⻅的状态码有哪些,以及适⽤场景

简介: HTTP 常⻅的状态码有哪些,以及适⽤场景

⼀、HTTP状态码


HT T P 状态码( HT T P S t a t u s Co d e )是⽤来表示⽹⻚服务器超⽂本传输协议响应状态的 3 位数字代

码。它由 RFC 2 6 1 6 规范定义,并得到 RFC 2 5 1 8 、 RFC 2 8 1 7 、 RFC 2 2 9 5 、 RFC 2 7 7 4 与 RFC

4 9 1 8 等规范扩展。简单来说, HT T P 状态码是服务器告诉客户端当前请求响应的状态,通过状态码可以

判断和分析服务器的运⾏状态。


⼆、常⻅状态码


1xx - 信息类


1 x x状态码表示请求已被接受,需要继续处理。这类响应是临时响应,只包含状态⾏和某些可选的响应 头信息,并以空⾏结束。常⻅状态码有:


100 (继续):客户端继续发送请求,这是临时响应,⽤来通知客户端部分请求已经被服务

器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽

略这个响应。服务器必须在请求完成后向客户端发送⼀个最终响应。

101 (切换协议):服务器根据客户端的请求切换协议,主要⽤于 WebSock e t 或 HTTP/2 升


2xx - 成功类


2 x x状态码表示请求已成功被服务器接收、理解,并接受。常⻅状态码有:


200 (成功):请求已成功,请求所希望的响应头或数据体将随此响应返回。

201 (已创建):请求成功并且服务器创建了新的资源。

204 (⽆内容):服务器成功处理请求,但没有返回任何内容。


3xx - 重定向类


3 x x 状态码表示要完成请求,需要进⼀步操作。通常,这些状态代码⽤来重定向。常⻅状态码有:

301 (永久重定向):请求的⽹⻚已永久移动到新位置。服务器返回此响应时,会⾃动将请

求者转到新位置。

302 (临时重定向):服务器⽬前从不同位置的⽹⻚响应请求,但请求者应继续使⽤原有位

置来进⾏以后的请求。

304 (未修改):服务器告诉客户端可以直接使⽤缓存的版本,⽆需重新请求。

307 (临时重定向):服务器⽬前从不同位置的⽹⻚响应请求,但请求者应继续使⽤原有位

置来进⾏以后的请求。


4xx - 客户端错误类


4 x x 状态码代表了客户端看起来可能发⽣了错误,妨碍了服务器的处理。常⻅状态码有:

400 (错误请求):服务器不理解请求的语法。

401 (未授权):请求要求身份验证。对于需要登录的⽹⻚,服务器可能返回此响应。

403 (禁⽌):服务器拒绝请求。

404 (未找到):服务器找不到请求的⽹⻚。


5xx - 服务器错误类


5 x x 状态码表示服务器⽆法完成明显有效的请求。这类状态码代表了服务器在处理请求的过程中有错误

或者异常状态发⽣。常⻅状态码有:

500 (服务器内部错误):服务器遇到错误,⽆法完成请求。

502 (错误⽹关):服务器作为⽹关或代理,从上游服务器收到⽆效响应。

503 (服务不可⽤):服务器⽬前⽆法使⽤(由于超载或停机维护)。


三、适⽤场景


不同的状态码适⽤于不同的场景,下⾯给出⼀些常⻅的适⽤场景:

200 :表示请求成功,服务器正确处理了请求。

204 :表示服务器正确处理了请求,但没有返回任何内容,通常⽤于删除操作等。

301 :表示永久重定向,请求的资源已经被永久移动到新的位置。

400 :表示客户端请求错误,服务器⽆法理解请求的语法。

403 :表示请求被服务器拒绝,没有权限访问该资源。

404 :表示请求的资源不存在,服务器找不到请求的⽹⻚。

不同的状态码对应不同的请求处理情况,客户端可以根据状态码来判断请求是否成功,并做相应处理。


相关文章
|
JSON API 网络架构
HTTP常见的请求方法、响应状态码、接口规范介绍
本文详细介绍了HTTP常见的请求方法、响应状态码和接口规范。通过理解和掌握这些内容,开发者可以更好地设计和实现W
2543 83
|
网络协议 安全 API
WebSocket、Socket、TCP 和 HTTP 的差别与应用场景
WebSocket、Socket、TCP 和 HTTP 是网络通信中的四大“使者”,各具特色:HTTP 适合短时请求,TCP 稳定可靠,Socket 灵活定制,WebSocket 实现实时双向通信。本文用通俗语言解析它们的区别与应用场景,助你为项目选择最合适的通信方式。
3390 3
|
JSON 安全 网络协议
HTTP/HTTPS协议(请求响应模型、状态码)
本文简要介绍了HTTP与HTTPS协议的基础知识。HTTP是一种无状态的超文本传输协议,基于TCP/IP,常用80端口,通过请求-响应模型实现客户端与服务器间的通信;HTTPS为HTTP的安全版本,基于SSL/TLS加密技术,使用443端口,确保数据传输的安全性。文中还详细描述了HTTP请求方法(如GET、POST)、请求与响应头字段、状态码分类及意义,并对比了两者在请求-响应模型中的安全性差异。
1169 20
HTTP协议中常见的状态码 ?
HTTP协议状态码分为1xx、2xx、3xx、4xx、5xx五类。常见状态码包括:101(切换协议)、200(请求成功)、302(重定向)、401(未认证)、404(资源未找到)、500(服务器错误)。
1027 0
|
Web App开发 缓存 数据安全/隐私保护
Django全栈实战:HTTP状态码与业务状态码的分层设计与实战应用
HTTP状态码是服务器响应请求的3位数字代码,分为1xx(信息)、2xx(成功)、3xx(重定向)、4xx(客户端错误)、5xx(服务器错误)。业务状态码则用于描述具体业务逻辑结果,常在响应体中返回。二者在前后端交互中有不同用途和处理方式。本文还介绍了如何在Django项目中设计并使用业务状态码。
792 0
|
JavaScript 前端开发 API
Superagent 异步请求:如何处理复杂的 HTTP 场景
Superagent 异步请求:如何处理复杂的 HTTP 场景
【网路原理】——HTTP状态码和Postman使用
状态码(200,404,403,405,500,504,302),Postman下载和使用构造请求
|
数据采集 前端开发 算法
Python Requests 的高级使用技巧:应对复杂 HTTP 请求场景
本文介绍了如何使用 Python 的 `requests` 库应对复杂的 HTTP 请求场景,包括 Spider Trap(蜘蛛陷阱)、SESSION 访问限制和请求频率限制。通过代理、CSS 类链接数控制、多账号切换和限流算法等技术手段,提高爬虫的稳定性和效率,增强在反爬虫环境中的生存能力。文中提供了详细的代码示例,帮助读者掌握这些高级用法。
1030 1
Python Requests 的高级使用技巧:应对复杂 HTTP 请求场景
|
网络协议 前端开发 API
HTTP 和 TCP 协议的应用场景有哪些不同
【10月更文挑战第25天】HTTP(超文本传输协议)和 TCP(传输控制协议)处于网络协议栈的不同层次,各自具有独特的功能和特点,因此它们的应用场景也存在明显的差异。