EJo*_*ica 25 google-chrome internet-explorer javascript browser-cache temporary-internet-files
因此,如果我在 Internet Explorer 中访问 Internet 选项:

我可以在 Google Chrome 中做类似的事情吗?现在,当我更改 JavaScript 文件并从 Visual Studio 进行调试时,Chrome 将始终使用缓存版本而不是使用修改后的版本。为了能够使用当前版本,我必须手动清除我的临时 Internet 文件/缓存,这真的很烦人。
Ste*_*ven 55
选项 1:暂时禁用缓存
选项 2:禁用会话缓存
使用命令行开关启动 Chrome,--disk-cache-size=1 --media-cache-size=1这会将缓存限制为 1 个字节,从而有效地禁用缓存。
选项 3:手动强制刷新
重新加载当前页面,忽略缓存内容: Shift+F5或 Ctrl+ Shift+r
Chrome 键盘快捷键 - Chrome 帮助(在“网页快捷键”下)
选项 4:额外的重新加载选项(来源)
打开开发人员工具后,右键单击“重新加载”按钮以显示包含以下内容的重新加载菜单:
它可能不是 100% 与 chrome 刷新相关,而是为了进一步开发。就像@Dom 说的那样,您可以在资源后添加 ?v=#。自动化该过程的一种方法是散列所述文件的内容并将其用作版本。
如果有帮助,我有一个关于如何在 C#(Razor for implementation)中执行此操作的代码片段。
帮手:
public static string HashUrl(string relativeUrl)
{
var server = HttpContext.Current.Server;
if (File.Exists(server.MapPath(relativeUrl)))
{
byte[] hashData;
using (var md5 = MD5.Create())
using (var stream = File.OpenRead(server.MapPath(relativeUrl)))
hashData = md5.ComputeHash(stream);
return relativeUrl.Replace("~", "") + "?v=" + BitConverter.ToString(hashData).Replace("-", "");
}
return relativeUrl + "?v=notFound";
}
Run Code Online (Sandbox Code Playgroud)
执行:
<link rel="stylesheet" href=@Util.HashUrl("~/Controllers/Home/Views/Index.css") />
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助
编辑 --- 有些人要求一些构建运行时和 1000 个小资源,大约需要 11 毫秒。
https://en.code-bude.net/wp-content/uploads/2013/08/md5_performance_benchmark_2.png
小智 5
在这些可能无法实现的其他情况下,例如想要在您无权访问的最终用户计算机上强制刷新,您可以将版本号附加到脚本名称作为查询参数,使浏览器识别它作为一个不同的文件。IE。example.js?v=1. 请记住,您需要在每次重新加载时更改数字以强制执行它。
您也可以通过本地开发来做到这一点,但开发工具方法效率更高。
| 归档时间: |
|
| 查看次数: |
7384 次 |
| 最近记录: |