HTTP | 青训营笔记

51 阅读1分钟

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

一、本堂课重点内容:

在正式讲解 Http 协议的技术细节前,本节课前置介绍 Http 协议的基本定义和特点,在此基础上,对于 Http 协议的发展历程及报文结构展开进一步分析。

二、详细知识点介绍:

1. HTTP协议介绍与特点

超文本传输协议,是一种基于TCP的应用层协议,分为请求和响应两部分,是一个简单可扩展的无状态协议。

image.png

  • Method image.png
    • 安全的:不会修改服务器数据的方法
    • 幂等的:同样的请求被执行一次与连续执行多次的效果是一样的,服务器状态也是一样的。
  • 状态码 image.png
  • RESTful API image.png
  • 常用请求头 image.png
  • 常用响应头 image.png
  • 缓存
    • 强缓存
      • image.png
    • 协商缓存
      • image.png
    • image.png
  • cookie image.png

2. 发展

HTTP/2更快、更稳定、更简单

  • 消息:与逻辑请求或响应消息相对应的完整的一系列帧
  • 数据流:已建立的连接内的双向字节流,可以承载一条或多条消息
  • 连接都是永久的,而且仅需要每个来源一个连接
  • 流控制:组织发送方向接收方发送大量数据的机制

image.png

3. 应用场景分析

image.png

  • 静态资源部署方案:缓存+CDN+文件名hash
  • 预请求:获知服务器是否允许该跨域请求
  • 跨域解决方法:
    • CORS
    • 代理服务器
    • Iframe

4. 工程应用

三、实践练习例子:

四、课后个人总结:

五、引用参考:

本篇文章代码均引用老师在掘金课堂中的示例。