Can I get the referrer?

eugeneK picture eugeneK · Jul 28, 2011 · Viewed 78.5k times · Source

I have a website on which I dynamically create Javascript code using ASP.NET handler in which I should add the referrer to a database.

I want to get referrer of referrer like so:

  • website1
  • website2 (where I create pixel to another site)
  • website3 (where pixel is located)

I don't have code access to website1, on website2 I can only assign JavaScript.

If I get referrer in current application state I get website2.

Is there a way to get website1 as referrer?

Answer

Tom picture Tom · Jul 28, 2011

You can pass this value along: document.referrer.

That expression would need to be evaluated on website 2, not on website 3.

So:

// website2.html
<img src="website3.com/pxl.gif" id="pxl" />
<script>
document.getElementById('pxl').src += '?ref=' + encodeURIComponent(document.referrer);
</script>

The request to website3 will then include the referrer.