【问题标题】:Can I get the referrer?我可以得到推荐人吗?
【发布时间】:2011-10-14 23:06:03
【问题描述】:

我有一个网站,我在该网站上使用 ASP.NET 处理程序动态创建 Javascript 代码,我应该在其中将引荐来源网址添加到数据库。

我想像这样获得referrer的referrer:

  • website1
  • website2(我创建像素到另一个站点)
  • website3(像素所在的位置)

我没有对website1 的代码访问权限,在website2 上我只能分配JavaScript。

如果我在当前应用程序状态下获得推荐人,我会获得website2

有没有办法让website1 成为推荐人?

【问题讨论】:

  • “我在哪里创建像素到另一个站点” 嗯?
  • @TJCrowder:很确定这是大约 1x1 像素的图像,它使用引用(查询字符串)来计算访问者数

标签: javascript asp.net user-agent referrer


【解决方案1】:

您可以传递此值:document.referrer

该表达式需要在网站 2 上进行评估,而不是在网站 3 上。

所以:

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

然后,对 website3 的请求将包括引荐来源网址。

【讨论】:

    【解决方案2】:

    在website3上直接获取website2的referer是不可能的。但是,由于您可以在 website2 上使用 javascript,因此您可以获得引荐来源 (document.referrer) 并将其添加到您获得的像素的 url。例如:

    var referer = document.referrer;
    var pixelUrl = 'http://website3/pixel?referrer=' + escape(referrer);
    // create pixel...
    

    希望有帮助

    【讨论】:

      猜你喜欢
      • 2018-03-30
      • 1970-01-01
      • 2011-05-26
      • 2012-11-10
      • 1970-01-01
      • 2017-12-03
      • 1970-01-01
      • 2018-12-19
      • 1970-01-01
      相关资源
      最近更新 更多