共计 986 个字符,预计需要花费 3 分钟才能阅读完成。
状态码
- 1xx 服务器收到申请
- 2xx 申请胜利,如 200
- 3xx 重定向, 如 301 永恒重定向,302 长期重定向,304 资源未扭转
- 4xx 客户端谬误, 如 404
- 5xx 服务端谬误, 如 500 服务器谬误 504 网关超时
methods
- get 获取数据
- post 新建数据
- patch/put 更新数据
- delete 删除数据
http headers
Request headers
- Accept 浏览器可接管的数据格式
- Accept-Encoding 浏览器可接管的压缩算法, 如 gzip
- Accept-Language 浏览器可接管的语言, 如 zh-CN
- Connection: keep-alive 一次 TCP 连贯重复使用
- cookie
- Host 域名
- User-Agent(UA) 浏览器信息
- Content-type 发送数据的格局, 如 application/json
Response Headers
- Content-type 发送数据的格局, 如 application/json
- Content-length 返回数据的大小, 多少字节
- Content-Encoding 返回数据的压缩算法, 如 gzip
- Set-cookie
缓存相干的 headers
- Cache-Control Expires
- Last-Modified If-Modified-SInce
- Etag If-None-Match
http 缓存
强制缓存
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, 点击刷新按钮
- 强制缓存生效, 协商缓存无效
强制刷新: ctrl + F5
- 强制缓存生效, 协商缓存生效
正文完