强缓存和协商缓存

介绍了浏览器缓存机制的两种方式:强缓存和协商缓存。强缓存通过 Expires 和 Cache-Control 实现,本地直接读取资源;协商缓存通过 Last-Modified / If-Modified-Since 和 Etag / If-None-Match 判断是否更新,命中时返回 304 状态码以减少资源加载。

HTTP 跨域时的 options 请求[转]

介绍了浏览器在跨域请求时的预检机制,区分简单请求与非简单请求。简单请求直接发送,非简单请求需先发起预检 (options 请求),确认服务器许可后再进行正式请求。请求头包含 origin 信息,服务器通过 Access-Control- 开头的字段进行跨域控制。非简单请求需预检,确保服务器允许后才携带 cookie 和参数进行正式请求。