Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果网络中有可用的更新(渐进式web应用),缓存将被更新或不被更新。如果是,那怎么办?_Javascript - Fatal编程技术网

Javascript 如果网络中有可用的更新(渐进式web应用),缓存将被更新或不被更新。如果是,那怎么办?

Javascript 如果网络中有可用的更新(渐进式web应用),缓存将被更新或不被更新。如果是,那怎么办?,javascript,Javascript,如果网络中有可用的更新(渐进式web应用),缓存将被更新或不被更新。如果是,那怎么办 (电子商务场景)假设客户端第三次和第四次访问同一路径,并且网络收到该路径的一些更新(假设您正在flipkart中查找手机)。但该内容在缓存内存中,搜索的数据已经存储,网络也有更新 因此,如果我们重复访问同一路径,服务人员将使用更新的数据或上次访问期间已存储的数据从本地存储器中提取数据。 归结起来是: 使用http/get获取资源(例如HTML或JavaScript文件)时,响应可以包括两个属性: 缓存控制:最

如果网络中有可用的更新(渐进式web应用),缓存将被更新或不被更新。如果是,那怎么办

(电子商务场景)假设客户端第三次和第四次访问同一路径,并且网络收到该路径的一些更新(假设您正在flipkart中查找手机)。但该内容在缓存内存中,搜索的数据已经存储,网络也有更新

因此,如果我们重复访问同一路径,服务人员将使用更新的数据或上次访问期间已存储的数据从本地存储器中提取数据。

归结起来是:

使用http/get获取资源(例如HTML或JavaScript文件)时,响应可以包括两个属性:

  • 缓存控制:最大年龄=[秒数]

  • ETag:[一些代码或散列]

max age
告诉浏览器使用缓存而不是发送新的资源http/GET请求的秒数

一旦超过最长使用时间,浏览器将发送http/GET请求,包括
ETag
。然后服务器检查其资源,查看
ETag
是否仍然与从浏览器发送的匹配。如果匹配,服务器将发送一个
304 Not Modified
响应,以节省网络带宽。如果没有,它将再次发送资源,按照
max age
中指定的新时间更新浏览器缓存

查看此答案时,请转到浏览器的开发者控制台(如果您使用的是chrome,请按CTRL+SHIFT+I)。重新加载页面。转到
网络
选项卡,并使用过滤器查找
favicon
。单击它,您将看到响应和请求标题,如下图所示:

请注意
缓存控制
Etag
http头元素。

归结起来是:

使用http/get获取资源(例如HTML或JavaScript文件)时,响应可以包括两个属性:

  • 缓存控制:最大年龄=[秒数]

  • ETag:[一些代码或散列]

max age
告诉浏览器使用缓存而不是发送新的资源http/GET请求的秒数

一旦超过最长使用时间,浏览器将发送http/GET请求,包括
ETag
。然后服务器检查其资源,查看
ETag
是否仍然与从浏览器发送的匹配。如果匹配,服务器将发送一个
304 Not Modified
响应,以节省网络带宽。如果没有,它将再次发送资源,按照
max age
中指定的新时间更新浏览器缓存

查看此答案时,请转到浏览器的开发者控制台(如果您使用的是chrome,请按CTRL+SHIFT+I)。重新加载页面。转到
网络
选项卡,并使用过滤器查找
favicon
。单击它,您将看到响应和请求标题,如下图所示:


请注意
缓存控制
Etag
http头元素。

如果可能,您可以使用实时示例进行详细说明吗?为此堆栈溢出站点添加了一个实时示例:)web是一个奇妙的地方!如果可能的话,你能详细说明一下使用实时示例吗?为这个堆栈溢出站点添加了一个实时示例:)web是一个很棒的地方!