0

在我的网站上,当我在网页上包含脚本时出现随机查询字符串的问题。我知道这不是我,因为 Pingdom 和 Google Pagespeed 都确认我有随机查询字符串,但问题是为什么。例如,

<script type="text/javascript" src="js/randomfile.js"></script>

在 Chrome、Firefox 和 IE 的开发者工具中显示为

<script type="text/javascript" src="js/randomfile.js?_=1247543709724"></script>

任何关于为什么会发生这种情况的指示?任何帮助,将不胜感激。

4

2 回答 2

2

如果您的源 HTML 不包含查询字符串,则似乎有一个服务器端优化工具会重写您src的 s.

这些查询字符串值之所以好的原因是为了缓存破坏。JavaScript 文件通常很少更改,因此它们非常适合缓存。但是,当您确实更改了 JS 文件时,您希望确保您的用户使用新文件而不是缓存中的文件。因此,您将您的src值更新为一个新的、唯一的 URL。浏览器将其视为全新资源并从服务器下载它,而忽略缓存中已经存在的内容。

于 2013-03-14T17:06:58.667 回答
1

该数字是附加到脚本 URL 的某个唯一值(可能在页面加载时生成)。这可以防止脚本被缓存,因为在每个页面加载时,URL 都是唯一的。

如果没有看到您的设置,我无法说出它在做什么,但它很可能是您正在使用的库之一。

于 2013-03-14T17:06:48.017 回答