一、基本概念
超文本传输协议(Hyber Text Transfer Protocol,HTTP)是万维网的基础,用于浏览器与服务器通信,通过超文本链接加载网页。HTTP 属于应用层,基于 TCP/IP 通信,端口默认为 TCP 80
HTTP 特性:
- 无状态:服务器无法通过 HTTP 记录用户是谁,目前可以通过 cookie 或者 token 来保持状态
- 灵活可扩展:三十年时间里其新增了请求方法、版本号、状态码、头字段等特性
- 可靠:基于 TCP 协议
- request - reponse 通信模式:一问一答,符合 RPC(Remote Procedure Call),将 HTTP request 封装成远程函数调用
二、HTTP 报文解析
三、HTTP 发展历程
- HTTP 协议始于三十年前蒂姆·伯纳斯 - 李的一篇论文;
- HTTP/0.9 是个简单的文本协议,只能获取文本资源;
- HTTP/1.0 确立了大部分现在使用的技术,但它不是正式标准;
- HTTP/1.1 是目前互联网上使用最广泛的协议,功能也非常完善;
- HTTP/2 基于 Google 的 SPDY 协议,注重性能改善,但还未普及;
- HTTP/3 基于 Google 的 QUIC 协议,是将来的发展方向。