在重定向期间执行javascript而不更改原始引用者

时间:2009-04-20 20:09:59

标签: referrer referer

我需要使用一些javascript客户端测试(例如浏览器窗口尺寸)来测试点击是否有效。

但是,我希望原始点击引荐来源保持不变。有没有办法可以进行重定向,执行一些javascript,捕获浏览器详细信息然后继续点击,同时保持原始引用者值不变?

1 个答案:

答案 0 :(得分:0)

如果没有,则只需将referrer包含为您捕获的“浏览器详细信息”之一,并使用重定向指令发回。推荐人可能在客户端上无法自动提供,因此它的工作方式如下:

  1. 客户端发送初始请求,可能包括推荐人。
  2. 服务器动态生成客户端测试页面,包括Javascript变量中的referrer。
  3. 客户端收集客户端属性,包括步骤2中存储的引用者值。
  4. 客户端使用新的重定向请求将收集的属性发送到服务器。
  5. 服务器记录referrer参数某处,但不在HTTP日志中,因为Referer标头的值不会与Javascript请求发送的值相同。
  6. 当然,你知道这一切都不可靠,因为它完全取决于客户端,包括步骤1中的Referer头,并且不能保证会发生,或者如果确实发生了,你得到的值是准确的。我还质疑做客户端检查的智慧(尤其是像窗口维度一样任意的东西),以确定导航请求的有效性。