例如,具有: “14”JavaScript文件名后使用的“?”是什么意思?
<script type="text/javascript"
src="http://somedomain.com/js/somejs.js?14">
</script>
那么,是什么意思吗?
例如,具有: “14”JavaScript文件名后使用的“?”是什么意思?
<script type="text/javascript"
src="http://somedomain.com/js/somejs.js?14">
</script>
那么,是什么意思吗?
javascript脚本可能是由服务器端脚本(PHP,CGI等)生成的,它以14作为参数。
这是一个查询参数,因为浏览器将向somedomain.com发送http请求来获取javascript源代码。
如果您使用像fiddler这样的标题浏览器加载页面,您将会看到到底发生了什么。
他们在那里欺骗浏览器认为它是一个新文件。
这是避免更新JS文件时浏览器缓存副本的技巧。
+1好点我认为这是单个整数坐在那里的最可能原因 – 2010-10-28 15:06:11
Didn'我想起那件事。长时间没有使用这种方法。 – Stephen 2010-10-28 15:06:23
这意味着变量正在通过GET
传递给脚本,尽管标准JavaScript文件不支持任何收集变量的方法。
但是,您可以在PHP或ASP.NET中编写一个服务器脚本,将内容类型设置为application/x-javascript
。
这样在PHP:
// file: external.php
<?php header("content-type: application/x-javascript"); ?>
// regular javascript here that uses $_GET['variable'];
然后,你可以把这个在你的HTML脚本标签:
<script type="text/javascript" src="external.php?variable=14"></script>
恕我直言,一个JavaScript源这样会从服务器请求 “动态” 的内容,因此服务器不会尝试使用JavaScript文件的缓存版本。参数是否真的重要取决于服务器。
http://en.wikipedia.org/wiki/Query_string – 2010-10-28 14:57:56