这是我参与「第四届青训营 」笔记创作活动的第 12 天
概述
本节课程主要分为以下五个方面:
- HTTP协议简介
- HTTP协议的基本结构与发展历程
- 常见场景中的HTTP协议应用
- 在不同的环境中发起HTTP请求
- 知识扩展,了解更多网络通信协议
基础篇
- An overview of HTTP - HTTP | MDN
- 图解 HTTP
- HTTP 权威指南
进阶篇
- Hypertext Transfer Protocol version 2 - RFC9113
- HPACK - Header Compression for HTTP/2 - RFC7541
HTTP协议的基本定义和主要特征
HTTP协议是位于应用层的基于TCP的一个协议,叫做超文本传输协议,它分为请求和响应,是一种无状态的协议。
HTTP协议的报文
报文分为请求报文和相应报文。
请求方式
method---get\post\put(已有载体的替换)\delete\options(通信选项的一些前置请求)
初始HTTP
超文本传输协议
应用层协议,基于TCP协议
简单无扩展,无状态
状态码
1xx 指示信息,表示请求已接收,继续处理
2xx 成功接收
3xx 重定向,要完成请求必须进行进一步的操作
4xx 客户端错误,请求有语法错误或请求无法实现
5xx 服务器错误,服务器未能实现合法请求
常用请求头
Accept,接收类型表示浏览器支持的MIME类型
Content-Type,客户端发送出实体内容类型
Cache-Control,指定请求和响应遵循的缓存机制
Expire,缓存控制,在这个时间内不会请求,直接使用缓存
Max-age,代表资源在本地缓存多少秒,有效时间内不会请求而是使用缓存
Cookie,有cookie并且同域,访问时会带上
Refer,该页面的来源url
Origin,最初的请求是从哪里发出的
User-Agent,用户客户端的信息
常用响应头
Content-Type,服务的返回实体内容的类型
Last-Modified,请求资源的最后修改时间
Expire,应该在什么时候认为文档已经过期,从而不再缓存