0

サーバー上にあるJavaScriptがあります。訪問者に、GoogleAnalyticsと同じ方法でサーバーに配置できるJavaScriptコードを提供したいと思います。例えば:

<script type="text/javascript" src="http://www.somedomain.com/script/script.js?id=2001102"></script>

IDを取得する必要があるところまですべてが機能しました。そのために何を使うべきかよくわかりません。

location.hrefとlocation.searchの両方を試しましたが、「script.js?id = XSOMEIDX」ではなく、スクリプトが埋め込まれているファイルのurl+paramが表示されます。

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 =に入れる方法はありますか?

前もって感謝します!

4

2 に答える 2

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 を含めるよう人々に依頼するだけです。

于 2012-04-23T19:45:08.537 に答える
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 は配列のようなオブジェクトを返します

于 2012-04-23T19:35:36.733 に答える