对浏览器的缓存机制来做个简要的总结:首先通过
Cache-Control
验证强缓存是否可用;如果强缓存可用,直接使用;否则进入协商缓存,即发送 HTTP 请求,服务器通过请求头中的If-Modified-Since
或者If-None-Match
这些条件请求字段检查资源是否更新。若资源更新,返回资源和200 状态码;否则,返回304,告诉浏览器直接从缓存获取资源
对浏览器的缓存机制来做个简要的总结:首先通过
Cache-Control
验证强缓存是否可用;如果强缓存可用,直接使用;否则进入协商缓存,即发送 HTTP 请求,服务器通过请求头中的If-Modified-Since
或者If-None-Match
这些条件请求字段检查资源是否更新。若资源更新,返回资源和200 状态码;否则,返回304,告诉浏览器直接从缓存获取资源
跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的 Web 应用被准许访问来自不同源服务器上的指定的资源。 — MDN
JSONP 请求本质上是利用了 “Ajax 请求会受到同源策略限制,而 script 标签请求不会” 这一点来绕过同源策略。
Session 是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中;
Cookie 是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现 Session 的一种方式;
LocalStorage 是 Web Storage API 的一种类型,能在浏览器端存储键值对数据;
SessionStorage 只存储当前会话页(tab 页)的数据,一旦用户关闭当前页或者浏览器,数据就自动被清除掉了。