Igo*_*nko 6 caching asp.net-core-mvc asp.net-core
我正在编写一个 ASP.NET Core MVC 网站并使用我自己的 JavaScript 库,我经常对其进行编辑。
\n问题是,有时对文件 don\xe2\x80\x99t 的修改会显示在浏览器中,即使我在调试时看到它们。
\n重命名文件会有所帮助。大写/小写第一个字母只起到了一次作用。删除浏览器缓存没有帮助。浏览器是 Opera 的最后一个版本,我不想更改它。
\n如果有人知道如何解决这个问题,我将非常高兴。
\n我发现清除浏览器缓存并不能解决问题很可疑。这表明可能存在另一个缓存源,可能在服务器\xe2\x80\x94 上,或者至少在您和服务器之间。这提出了几个问题:
\n\n无论如何,ASP.NET Core 中的教科书解决方案是实现AppendVersion的 属性ScriptTagHelper,如下所示:
<script type="text/javascript" src="~/Shared/Script.js" asp-append-version="true"></script>\nRun Code Online (Sandbox Code Playgroud)\n\n这将通过计算文件的 SHA256 哈希值自动将唯一的查询字符串附加到您的脚本名称。每次修改文件时,都会生成一个新的哈希值。例如,输出可能如下所示:
\n\n<script type="text/javascript" src="/Shared/Script.js?v=Ct6ZXzHiOuQJzhBoHlSlNyN1_d3jJnz2DvRs-5xyyJs"></script>\nRun Code Online (Sandbox Code Playgroud)\n\n这有助于确保浏览器始终下载最新版本。它\xe2\x80\x99 与每次更改文件时重命名文件类似,只不过标记助手会代表您处理该问题。
\n\n\n\n\n注意:如果您需要应用类似于 CSS 或内联图像的内容,\xe2\x80\x99s 还有一个类似的 和 标签帮助器
\n<link>。<img>
也就是说,正如顶部提到的:如果您的 HTML 输出在某种程度上被积极缓存,您可能仍然会遇到问题。
\n| 归档时间: |
|
| 查看次数: |
3079 次 |
| 最近记录: |