HTTP 1.1 与 HTTP 1.0

什么是HTTP

HTTP 就是一个 超文本传输协议

**协议 :**双方 约定 发送的 **域名数据长度连接(长连接还是短连接)**格式(UTF-8那些)

传输 :数据虽然是在 A 和 B 之间传输,但允许中间有中转或接力

**超文本:**图片、视频、压缩包,在HTTP里都是文本

HTTP 常见状态码

比如 200 连接成功,成功的状态码 404 Not Found 找不到 请求的资源

HTTP 常见字段

Host(域名)

cpp 复制代码
Host: www.A.com

Content-Length(数据长度)

cpp 复制代码
Content-Length: 1000

Connection ( 连接)**

cpp 复制代码
Connection: Keep-Alive //长连接(保持连接,数据传输完继续维护socket套接字)

Content-Type(格式)

cpp 复制代码
Content-Type: text/html; Charset=utf-8

html 网页, 编码 utf-8

HTTP 的 GET 和 POST

GET: 从服务器获取指定的资源

POST: 根据请求负荷(报文body)对指定的资源做出处理 (上传资源)

GET 和 POST 的区别:

1, GET 的 URL 有长度限制 ,因为在服务端有长度限制,不能被访问没有的资源,POST没有URL限制

2, 功能区别

HTTP 缓存技术

本地缓存资源,这样第二次访问时,就不用发出请求再等待响应,直接从磁盘获取

但是 资源过期了怎么办 因为每个资源的有

ETag 字段 (文件名+文件大小+修改时间) 和

有效期 (分 相对时间 和 绝对 时间)

HTTP 1.0 如何改进

先说HTTP/1.1 相比 HTTP/1.0 性能上的改进:

使用长连接的方式改善了 HTTP/1.0 短连接造成的性能开销。

也就是Connection: Keep-Alive //长连接(保持连接,数据传输完继续维护socket套接字)

支持管道(pipeline)网络传输

只要第一个请求发出去了,不必等其回来,就可以发第二个请求出去,可以减少整体的响应时间。

相关推荐
qq_479875432 小时前
C++ 网络编程中的 Protobuf 消息分发 (Dispatcher) 设计模式
网络·c++·设计模式
Tandy12356_2 小时前
手写TCP/IP协议——IP层输出处理
c语言·网络·c++·tcp/ip·计算机网络
luoganttcc2 小时前
tcp 三次 握手
网络·网络协议·tcp/ip
土星云SaturnCloud8 小时前
不止是替代:从机械风扇的可靠性困局,看服务器散热技术新范式
服务器·网络·人工智能·ai
liulilittle9 小时前
C++ 浮点数封装。
linux·服务器·开发语言·前端·网络·数据库·c++
lang201509289 小时前
Sentinel核心机制:Context与EntranceNode解析
网络·sentinel
chuxinweihui9 小时前
数据链路层
运维·服务器·网络
qq_251533599 小时前
使用 Python 提取 MAC 地址
网络·python·macos
aFakeProgramer10 小时前
Linux 启动流程
网络
阿干tkl12 小时前
传统网络与NetworkManager对比
linux·网络