我的javascript位于我的服务器上。我想向访问者提供他们可以按照Google Analytics(分析)的方式放置在其服务器上的JavaScript代码。例如:
<script type="text/javascript" src="http://www.somedomain.com/script/script.js?id=2001102"></script>
我把所有事情都搞定了,我需要抓住id。我只是不确定该用什么。
我尝试了location.href和location.search,但是这给了我嵌入脚本的文件的url + param,而不是“script.js?id = XSOMEIDX”
在script.js中我有以下内容:
function requestContent() {
var script = document.createElement("script");
script.src = "http://www.somedomain.com/script/xss_script.php?id="I WANT TO INPUT ID HERE+"&url="+location.href;
document.getElementsByTagName("head")[0].appendChild(script);
}
我怎么能把id = XSOMEIDX并把它放在xss_script.php中?id =?
提前致谢!
答案 0 :(得分:1)
你可以使用URL重写来获取id = XSOMEIDX并将其放在xss_script.php中吗?id =
执行此操作的mod重写规则如下所示:
RewriteRule ^/scripts/([a-zA-Z0-0]+)/script.js$ /scripts/script.php?id=$1
这样你就可以简单地要求人们加入yoursite.com/scripts/ {id} /scripts.js
答案 1 :(得分:0)
如何设置具有特定属性的外部脚本标记?
<script data-my-script="my_value" type="text/javascript" src="http://www.somedomain.com/script/script.js?id=2001102"></script>
在现代浏览器中,您可以执行
var scripts = document.querySelectorAll("script[src][data-my-script]");
$.each(scripts, function(i, script) { console.log(script.src); });
并遍历nodeList ...
注意:querySelectorAll不能跨浏览器工作 注意:querySelectorAll返回一个类似数组的对象