3

我目前正在从 Visual Studio 2010 开发和运行我的网站。该网站在编译后在 Google Chrome 中启动。

一路上的某个地方,东西被缓存了。我可以更改 javascript 函数,但除非我清除 chrome 中的缓存,否则旧版本的脚本正在运行。

我正在使用 .net 3.5 和最新版本的 Google Chrome 运行 Visual Studio 2010。

是否可以每次都自动加载最新的脚本?我真的不想每次保存和编译时都在我的脚本标签上添加一个 ? 参数。每次都必须清除缓存已经过时了。

谢谢!

4

5 回答 5

8

打开 Chrome 开发工具。在右下角有一个齿轮图标。单击它,然后单击“禁用缓存”。

还有一个选项“向右停靠”。试试看,也许,你会喜欢它!

于 2012-06-18T18:50:05.240 回答
4

您还可以让服务器将以下标头添加到从服务器发出的请求中:

cache-control:no-store, no-cache, must-revalidate, max-age=0

此外,您可以使用禁用缓存的命令行标志启动 chrome。为此,请创建一个新的快捷方式并在目标框中键入以下内容,替换为您自己的计算机用户名:

C:\Users\<username here>\AppData\Local\Google\Chrome\Application\chrome.exe --disk-cache-size=1 -media-cache-size=1

标志必须设置为 1,因为 0 是无限的。数字以字节为单位。

希望这可以帮助。

编辑:要在没有缓存的情况下仅重新加载一次页面,请按CTRL+SHIFT+R。这应该适用于所有浏览器。

于 2012-06-18T18:59:54.500 回答
2

我使用的简单方法是CTRL-F5每次打开 chrome 时,或者,您可以在运行应用程序之前终止本地 Web 服务器:

在此处输入图像描述

请参阅 chrome 快捷键列表以获取更多信息:键盘快捷键。请注意CTRL-F5以及SHIFT-F5将重新加载当前页面,同时忽略缓存的内容。

我通常使用上述方法而不是一起禁用缓存(从 chrome 设置),因为这是我想要取消缓存的本地化情况。所有其他情况(如正常浏览)我更愿意保留缓存。

于 2012-06-18T19:10:01.270 回答
0

您始终可以使用一些参数导入 javascript 源代码:

<script type="text/javascript" src="../scripts/scriptFile.js?28361823"></script>

大多数人使用 getTimeInMillis() 函数来填充请求。这将绕过缓存(通常),您将获得最新数据。

这也将迫使您的用户再次获取 javascript,所以要小心。

于 2012-06-18T18:51:04.843 回答
0

如果您想防止在浏览器中缓存 css 或 javascript 文件,请在链接中使用随机版本 ID。例如使用这个:

<link   href=<%="'mystyle.css?version="+ DateTime.Now.ToString("yyyyMMddhhmmss") +"'"%>   rel="stylesheet" type="text/css"/>

其中 myStyle.css 是样式表文件,而 DateTime.Now.ToString("yyyyMMddhhmmss") 函数用于生成随机的不同版本 ID。

于 2017-01-05T06:02:40.407 回答