这是我参与「第五届青训营 」伴学笔记创作活动的第5天。
概述
本节课程主要分为以下五个方面:
- HTTP协议简介
- HTTP协议的基本结构与发展历程
- 常见场景中的HTTP协议应用
- 在不同的环境中发起HTTP请求
- 知识扩展,了解更多网络通信协议
课前 (必须)
- 安装 Chrome浏览器 如果有其他浏览器也可以,但建议使用Chrome
打开 Google Chrome 网络浏览器,按照提示下载安装即可
【可选】复习计算机网络相关知识
重点放在网络模型和HTTP协议相关知识点
课后
HTTP学习资料推荐 学习建议:
相对来讲HTTP协议的常用知识不复杂,“基础篇”材料中,MDN 可以作为工具查询,“图解 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,接收类型
- Content-Type,客户端发送出实体内容类型
- Cache-Control,指定请求和响应遵循的缓存机制
- Expire,缓存控制,在这个时间内不会请求,直接使用缓存
- Max-age,代表资源在本地缓存多少秒,有效时间内不会请求而是使用缓存
- Cookie,有cookie并且同域,访问时会带上
- Refer,该页面的来源url
- Origin,最初的请求是从哪里发出的
- User-Agent,用户客户端的信息
常用响应头
- Content-Type,服务的返回实体类型
- Last-Modified,请求资源的最后修改时间
- Expire,应该在什么时候认为文档已经过期从而不再缓存
课后总结
HTTP是一种无状态的协议,可以通过cookie等帮忙存储信息,HTTP请求常用有POST和GET,无论是GET还是POST,都有头与体。