ASP.NETハンドラーを使用してJavascriptコードを動的に作成するWebサイトがあり、そこにデータベースにリファラーを追加する必要があります。
私は次のようなリファラーのリファラーを取得したい:
website1
website2
(別のサイトにピクセルを作成する場所)website3
(ピクセルが配置されている場所)website1
へのコードアクセス権がありません。website2
では、JavaScriptのみを割り当てることができます。
現在のアプリケーション状態でリファラーを取得すると、website2
が取得されます。
リファラーとしてwebsite1
を取得する方法はありますか?
この値を渡すことができます:document.referrer
。
その表現は、ウェブサイト3ではなく、ウェブサイト2で評価する必要があります。
そう:
// website2.html
<img src="website3.com/pxl.gif" id="pxl" />
<script>
document.getElementById('pxl').src += '?ref=' + encodeURIComponent(document.referrer);
</script>
次に、website3へのリクエストにリファラーが含まれます。
Website3で直接website2のリファラーを取得することは不可能です。ただし、website2でjavascriptを使用できるため、リファラー(document.referrer
)取得したピクセルのURLに追加します。例えば:
var referer = document.referrer;
var pixelUrl = 'http://website3/pixel?referrer=' + escape(referrer);
// create pixel...
役立つことを願っています