这是我参与「第四届青训营 」笔记创作活动的第8天
本篇文章紧接HTTP使用指南(上)
一、场景分析
1.静态资源场景分析
打开一个网页后打开控制台,切换到network,本文以www.toutiao.com为例
缓存策略是怎么样的?
- 强缓存
- Cache-control:一年
静态资源方案
-
缓存+CDN+文件名hash
-
CDN:Content Delivery Network
-
通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务
CDN简单原理图
2.登录
业务场景
- 表单登录
- 扫码登录
技术方式
- SSD
- 账号密码登录
- 打开控制台-network-勾选preserve-过滤quick_login
- 观察请求
为什么有options的请求?
跨域 cross-origin
跨域
跨域解决方案
-
CORS
-
代理服务器
同源策略是浏览器的安全策略,不是HTTP的
-
Iframe
诸多不便
二、实战
1.浏览器
AJAX之XHR
AJAX之Fetch
- XMLHttpRequest的升级版
- 使用Promise
- 模块化设计,Response,Request,Header对象
- 通过数据流处理对象,支持分块读取
标准库:HTTP/HTTPS
默认模块,无需安装其他依赖 功能有限/不是十分友好
常用的请求库:axios
- 支持浏览器、nodejs环境
- 丰富的拦截器