【协议-HTTP】

HTTP协议

HTTP协议(超文本传输协议HyperText Transfer Protocol),它是基于TCP协议的应用层传输协议。http协议定义web客户端如何才能够web服务器请求web页面,以及服务器如何把web页面传送给客户端。

HTTP 是一种无状态 (stateless) 协议, HTTP协议本身不会对发送过的请求和相应的通信状态进行持久化处理。

然而,在许多应用场景中,我们需要保持用户登录的状态或记录用户购物车中的商品。由于HTTP是无状态协议,所以必须引入一些技术来记录管理状态,例如Cookie。

"统一资源定位符" (URL)用来定义Web网页的地址。

http请求

http请求由请求行,消息报头,请求正文三部分构成。

1.请求行:用来说明请求类型,要访问的资源,以及所使用的HTTP版本.

复制代码
请求类型:
HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD 方法。
HTTP1.1 新增了六种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。
1	GET	请求指定的页面信息,并返回实体主体。
2	HEAD	类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头
3	POST	向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。
4	PUT	从客户端向服务器传送的数据取代指定的文档的内容。
5	DELETE	请求服务器删除指定的页面。
6	CONNECT	HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。
7	OPTIONS	允许客户端查看服务器的性能。
8	TRACE	回显服务器收到的请求,主要用于测试或诊断。
9	PATCH	是对 PUT 方法的补充,用来对已知资源进行局部更新 。

2.请求头部,紧接着请求行(即第一行)之后的部分,用来说明服务器要使用的附加信息。

  • host:指出请求的目的地。
  • user-agent:向服务器发送,包含了访问者系统引擎版本、浏览器信息的字段信息。

3.请求头部和请求正文之间有空行。

4.请求主体:可以添加任意的其他数据。

http响应

HTTP响应也由三部分组成,包括状态行,消息报头,响应正文。

1.状态行:由http协议版本号、状态码、状态消息三部分组成。

复制代码
状态码:
HTTP 状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型。响应分为五类:信息响应(100--199),成功响应(200--299),重定向(300--399),客户端错误(400--499)和服务器错误 (500--599):
常见的http状态码:
200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误

2.消息报头:用来说明客户端要使用的一些附加信息。

3.消息报头后面的空行是必须的。

4.响应正文:服务器返回给客户端的文本信息。

相关推荐
上海合宙LuatOS3 小时前
LuatOS核心库API——【io】 io操作(扩展)
java·服务器·前端·网络·单片机·嵌入式硬件·物联网
她说彩礼65万4 小时前
I/O密集型 CPU密集型
网络
枷锁—sha5 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 048】详解:Ret2Libc 之 Puts 泄露
网络·安全·网络安全
初恋叫萱萱5 小时前
基于 Rust 与 DeepSeek V3.2 构建高性能插件化 LLM 应用框架深度解析
网络·人工智能·rust
专业开发者7 小时前
Wi-Fi 技术学习:面向 Wi-Fi 网络的抗干扰技术
网络·学习
瘾大侠7 小时前
WingData
网络·安全·web安全·网络安全
志栋智能7 小时前
自动化运维真的只能选复杂平台吗?
运维·网络·数据库·人工智能·自动化
AC赳赳老秦7 小时前
低代码AI化革命:DeepSeek引领智能开发新纪元
网络·人工智能·安全·web安全·低代码·prometheus·deepseek
月明长歌7 小时前
Java 网络编程套接字入门:从“发一段数据”到“写一个可并发的服务器”
java·服务器·网络
呉師傅7 小时前
【操作技巧】Win10关机提示这个应用阻止关机。怎么解决?
运维·网络·windows·电脑