http实用指南|青训营笔记

54 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第7天!今天学习复习的是http的实用指南,之前有了解http是超文本传输协议,了解较浅,今天通过学习之后有更加深入的了解以及相关用法的认识。笔记主要在图片中呈现。

http1.jpg

http2.jpg

http3.jpg

http4.jpg

http5.jpg

  1. 认识http
    • 超文本传输协议Hyper Text Transfer Protocol
    • 应用层协议,基于TCP协议
    • 请求响应
    • 简单可扩展
    • 无状态
  2. 协议分析————发展
    • HTTP/0.9————HTTP/1.0————HTTP/1.1————HTTP/2————HTTP/3
  3. 协议分析————报文
    • 常用GET,POST,PUT,DELETE,HEAD,CONNECT,OPINIONS,TRACE,PATCH
    • Safe(安全的)不会修改服务器的数据的方法 GET HEAD PATCH
    • Idempotent(幂等)同样的请求被执行一次与连续执行多次效果一样,服务器的状态也是一样的,所有safe的方法都是Idempotent的 GET HEAD OPINIONS PUT DELETE
    • 状态码:1xx 2xx 3xx 4xx 5xx
    • RESTful API一种API设计风格,Representational State Transfer
      • 每一个URI代表一种资源
      • 客户端和服务器之间,传递这种资源的某种表现层
      • 客户端通过HTTP method,对服务器端资源进行操作,实现“表现层状态转化”
    • 缓存————强缓存、协商缓存
  4. 协议分析————发展
    • HTTP2概述————更快、更稳定、更简单
      • 帧:HTTP/2通信的最小单位,每个帧都包含帧头,至少也会标识出当前帧所属的数据流
      • 消息:与逻辑请求或响应消息对应的完整的一系列帧
      • 数据流:已建立的连接内的双向字节流,可以承载一条或多条消息
    • HTTP/2连接都是永久的,而且仅需要每个来源一个连接流控制,阻止发送方向接收方发送大量数据的机制
    • HTTPS————经过TSL/SSL加密(对称加密&非对称加密)
    • 静态资源
      • 缓存策略:强缓存、Cache-control一年
      • 允许所有域名访问,资源类型:css
      • 方案————缓存+CDN+文件名hash