初始HTTP | 青训营笔记

46 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 7 天

初始HTTP

image-20230120191042336

TCP协议的特点是:

  • 面向连接
  • 一对一
  • 可靠交付

image-20230120191146850

无状态是指没有记忆能力,每个请求都是独立的

协议分析

发展

HTTP 0.9 :请求GET/mypage.html,响应只有HTML文档

HTTP 1.0: 增加了Header 有了状态码、支持多种文档类型

HTTP 1.1 标准化协议:链接复用、缓存 内容协商

HTTP 2 : 二进制协议 压缩header 服务器推送

Method

image-20230120191355547

safe(安全的):不会修改服务器的数据的方法

Idempotent(幂等):同样的请求被执行一次与连续执行多次的效果是一样的,服务器的状态也是一样的。所有safe的方法都是Idempotent的

image-20230120191616664

RESTful API

一种API设计风格

  1. 每一个URI代表一种资源
  2. 客户端和服务器之间,传递这种资源的某种表现层
  3. 客户端通过HTTP method,对服务器端资源进行操作,实现“表现层状态转化”

常用请求头

image-20230120191903816

image-20230120192303546

缓存

image-20230120192401380

cookie

image-20230120192441524

same-site:有效顶级域名(eTLD)+1的规则查找得到的一级域名是否相同来判断是否是同站请求

HTTP/2

帧:http/2通信的最小单位,每个帧都包含帧头、二进制

消息:与逻辑请求或响应消息对应的完整的一系列帧

数据流:已建立的连接内的双向字节流,可以承载一条或多条消息

HTTP/2 连接都是永久的,而且仅需要每个来源一个连接,流控制:阻止发送方向接收方发送大量数据的机制、服务器推送

image-20230120193124550

image-20230120193139558

场景分析

  • 静态资源/登录分析:打开浏览器调试窗口中的network标签,查看相应的资源状况。
  • 跨域:该图片展示跨域的情况。相应的有跨域问题解决方案。之前写小项目一般是用CORS来解决,还可以使用代理服务器来处理跨域问题。

实战

image-20230120193254829

image-20230120193311373

image-20230120193321774

image-20230120193334463