这是我参与「第四届青训营」笔记创作活动的第5天
一、初识HTTP
什么是HTTP
HTTP(即Hyper Text Transfer Protocol,又被称为超文本传输协议)指的是互联网上应用最为广泛的一种网络协议,它是一种无状态协议,即服务器不保留与客户交易时的任何状态。HTTP是一种面向对象的协议。允许传送任意类型的数据对象。它通过数据类型和长度来标识所传送的数据内容和大小,并允许对数据进行压缩传送。当用户在一个HTML文档中定义了一个超文本链后,浏览器将通过TCP/IP协议与指定的服务器建立连接。
二、协议分析
1.发展
2. 报文
Method
Safe(安全):不会修改服务器的数据的方法(GET、HEAD、OPTIONS)
ldempotent(幂等):同样的请求被执行一次与被执行多次的效果是一样的,服务器的状态也是一样的,所有Safe的方法都是Idempotent的(GET、HEAD、OPTIONS、PUT、DELETE)
3. 状态码
4. 常用请求头
5. 常用响应头
6. 缓存
7. cookie
8.HTTP/2
HTTP/2 (原名HTTP/2.0)即超文本传输协议2.0,是下一代HTTP协议。是由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis (httpbis)工作小组进行开发。是自1999年http1.1发布后的首个更新。HTTP 2.0在2013年8月进行首次合作共事性测试。在开放互联网上HTTP 2.0将只用于https://网址,而http://网址将继续使用HTTP/1,目的是在开放互联网上增加使用加密技术,以提供强有力的保护去遏制主动攻击。DANE RFC6698允许域名管理员不通过第三方CA自行发行证书。
总而言之:更快、更稳定、更简单
9. HTTPS
HTTPS (全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面
总而言之:更安全