HTTP的缓存机制
HTTP的缓存主要利用header里的两个字段来控制:
-
Cache-control主要包含以及几个字段:
-
private:则只有客户端可以缓存
-
public:客户端和代理服务器都可以缓存
-
max-age:缓存的过期时间
-
no-cache:需要使用对比缓存来验证缓存数据
-
no-store:所有内存都不会进行缓存
-
-
ETag:即用来进行对比缓存,Etag是服务端资源的一个标识码
-
当客户端发送第一次请求时服务端会下发当前请求资源的标识码Etag,下次再请求时,客户端则会通过header里的If-None-Match将这个标识码Etag带上,服务端将客户端传来的Etag与最新的资源Etag做对比,如果一样,则表示资源没有更新,返回304。
-
通过Cache-control和Etag的配合来实现HTTP的缓存机制。
来源:原创
发布时间:2021-08-03 21:05:20