前端http【面试回顾】
状态码
- 1xx 服务器收到请求
- 2xx 请求成功,如200
- 3xx 重定向, 如301永久重定向,302临时重定向,304资源未改变
- 4xx 客户端错误, 如404
- 5xx 服务端错误, 如500服务器错误 504网关超时
- get 获取数据
- post 新建数据
- patch/put 更新数据
- delete 删除数据
- Accept 浏览器可接收的数据格式
- Accept-Encoding 浏览器可接收的压缩算法, 如gzip
- Accept-Language 浏览器可接收的语言, 如zh-CN
- Connection: keep-alive 一次TCP连接重复使用
- cookie
- Host 域名
- User-Agent(UA) 浏览器信息
- Content-type 发送数据的格式, 如application/json
- Content-type 发送数据的格式, 如application/json
- Content-length 返回数据的大小, 多少字节
- Content-Encoding 返回数据的压缩算法,如gzip
- Set-cookie
- Cache-Control Expires
- Last-Modified If-Modified-SInce
- Etag If-None-Match
文章图片
- Cache-Control概念
- Response Headers中
- 控制强制缓存的逻辑
- 例如Cache-Control: max-age = 31536000 (s)
- Cache-Control的值
- max-age
- no-cache(不用强制缓存)
- no-store(不用缓存)
- private
- public
- Expires
- 同为控制缓存过期
- 已被Cache-Control代替
文章图片
- 服务端缓存策略
- 服务端判断客户端资源是否和服务端资源一样
- 一致则返回304, 否则返回200和最新的资源
- 两种资源标识
- Last-Modified 资源的最后修改时间
- Etag 资源的唯一标识(一个字符串,类似指纹)
- 会优先使用Etag
- Last-Modified 只能精确到秒级
- 如果资源被重复生成,而内容不变,则Etag更精确
文章图片
三种刷新操作
- 正常操作: 地址栏输入url, 跳转链接, 前进后退等
- 强制缓存有效,协商缓存有效
- 手动刷新, 如F5, 点击刷新按钮
- 强制缓存失效,协商缓存有效
- 【前端http【面试回顾】】强制刷新: ctrl + F5
- 强制缓存失效,协商缓存失效
推荐阅读
- 宽容谁
- 我要做大厨
- 增长黑客的海盗法则
- 画画吗()
- 2019-02-13——今天谈梦想()
- 远去的风筝
- 三十年后的广场舞大爷
- 叙述作文
- 20190302|20190302 复盘翻盘
- 学无止境,人生还很长