javascript - 任何人都可以帮助网络应用程序中的缓存过程吗?

标签 javascript google-chrome caching client client-server

我已经开发了一个网络应用程序(尚未发布)。它有很多性能问题。所以我决定将我的静态资源缓存到客户端的浏览器中。

我有两个静态资源,它们是 app1.jsapp2.js (例如)。

我想缓存这些资源。因此,我确实为这些 Assets 的响应添加了 header ,即 Cache-Control : max-age=600。现在我对这些文件有 10 分钟的缓存。它运行得很好。

但是出现了一个问题。问题是,如果我在 10 分钟内更改静态 Assets ,我的更改不会出现在客户端中。我知道我的缓存过程是造成这种情况的原因。但我希望当我突然更改这些 Assets 时,这些更改将通过 Cache-Control : max-age=600 header 更新到客户端。

同时,如果我的更改仅发生在 app1.js 中,则仅更新到客户端。不影响app2.js

有什么办法可以做到这一点吗?您了解有关缓存的详细信息,请与我分享。

提前致谢!

瓦西卡兰S

最佳答案

您可以在更新资源请求时将片段添加到资源请求中。所以<script src="app1.js">变成<script src="app1.js?v=4">

关于javascript - 任何人都可以帮助网络应用程序中的缓存过程吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45050705/

相关文章:

javascript - 基本jQuery AJAX性能查询

javascript - THREE.js 从 GPUComputationRenderer 纹理读取像素

caching - 来自 ServiceWorker 的获取调用是否使用常规浏览器缓存

javascript - 在 require.js data-main 上过期缓存

c# - c# 是否有像缓存一样工作的集合?

javascript - 在 Angular 2+ 上重新渲染 FullCalendar

javascript - 允许用户使用angularjs在输入框中只输入正数

css - Internet Explorer 与 Chrome 错误

html - Chrome SVG 网络字体在选择输入中出现奇怪的字符

java - GWT Internet Explorer 缓存 AJAX 响应