【问题标题】:Random number file name in a HTMLHTML中的随机数文件名
【发布时间】:2016-12-23 06:44:22
【问题描述】:

我想知道当包含在 html 中引用的文件名中时,使用随机数有何不同。

第一行代码和第二行有什么不同?

<script src="index.js?1481269289258"></script>

<script src="index.js"></script>

有关此的任何详细信息/信息都会有所帮助。

非常感谢大家。

【问题讨论】:

  • 数字,通常是unix时间戳或版本的形式。这是为了强制 Web 浏览器加载文件的新(新鲜)副本,因为 foo.js?12345 是与 foo.js?12346 不同的文件,浏览器将重新下载 foo.js 更新的副本以替换本地缓存的版本(如果有) .当浏览器太顽固而无法放弃旧副本时,欺骗浏览器重新加载您的脚本确实是一种技巧。

标签: html random


【解决方案1】:

这有时用于绕过缓存。通常,http 服务器或缓存层(例如 varnish)在缓存键中使用查询参数。因此,添加 unique 查询参数将提供相同的文件,但会强制重新加载。

【讨论】:

  • ... 或确保仅缓存最新版本的脚本(不强制浏览器缓存,但如果旧版本有缓存副本并使用新版本更新,则丢弃旧版本) -- 它实际上并没有阻止缓存。在大多数情况下,只是绕过了浏览器缓存的顽固性。
  • 是的,当然。虽然在那里您通常会使用版本控制系统,而不是随机数或字符串。
  • 随机在这种情况下无济于事:)
  • 正确 :)(也调整了我上面的评论)
  • 谢谢各位。所以基本上是一个缓存破坏者?
【解决方案2】:

随机数强制导航器重新加载脚本。否则它可能会在缓存中运行脚本。

【讨论】:

    猜你喜欢
    • 2017-02-23
    • 1970-01-01
    • 1970-01-01
    • 2016-12-29
    • 1970-01-01
    • 2021-08-05
    • 1970-01-01
    • 2012-11-09
    • 2019-03-23
    相关资源
    最近更新 更多