基本定义
超文本传输协议,是应用层协议,基于TCP协议;
计算机网络内容,复习一下
主要特征
无状态协议
发展历程
报文结构
eg:1.1
请求报文:
起始行:方法、协议版本
头部包含用户代理、语言、文本类型、日期等信息
常见方法:PUT、DELETE、POST、GET
状态码:200 成功、3xx 需要重新操作、4xx 客户端出错了、5xx 服务器端出错
RESTful API:一种API设计风格
常用请求头:Accept 接受类型;
Content-Type:客户端发送的实体内容的类型
Cache-Control:指定请求和响应遵循的缓存机制
if-Modified-Since:用来标记资源是否变动,缓存用
常用响应头:
Server:服务器的信息
Set-Cookie:设置和页面关联的cookie
HTTP2:更快、更稳定、更简单 与HTTP/1.1在请求方法、状态码乃至URI和绝大多数HTTP头部字段等方面保持高度兼容性。HTTP2的连接都是永久的,流控制 基于TLS/1.2或以上版本的加密连接
HTTPS:超文本传输安全协议 在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性; HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法;
场景分析
静态资源方案:缓存+CND+文件名hash (emmm?DNS??) 跨域权限控制:预请求 跨域解决方案: 代理服务器、Iframe
实战
AJAX之XHR 常用请求库:axios 用户体验:网络优化、稳定性 扩展:QUIC:结合TCP和UDP的优点,类似TCP的可靠传输