【问题标题】:IE did not set document.referrerIE 没有设置 document.referrer
【发布时间】:2012-11-20 19:05:03
【问题描述】:

我通过在 IE 中调试仔细观察了它;如果我提交表单或单击任何链接,但当我使用 javascript window.location 重定向到另一个页面时,IE 确实设置了 document.referrerIE did not set document.referrer

【问题讨论】:

  • 也许您应该指定您在测试中使用的 Internet Explorer 版本。只是说出来(它会出现在每个好的答案中),依赖推荐人永远不安全,因为他们很容易被欺骗或禁用。因此,您应该考虑使用不同的机制。我认为这个question 与你的有关。
  • 无论您使用什么版本,都无法像 imran 所说的那样获得推荐。尝试在某个页面打开window.open并自己检查

标签: javascript html internet-explorer browser document


【解决方案1】:

信息:Internet Explorer 在不安全的情况下不发送引用标头

在 Internet Explorer 4.0 及更高版本中从一个文档链接到另一个文档时,如果链接是从 HTTPS 页面到非 HTTPS 页面,则不会发送 Referer 标头。当链接来自非 HTTP(S) 协议(例如 file://)到另一个页面时,Referer 标头也不会发送。

Microsoft

【讨论】:

    【解决方案2】:

    试试这个

    <script type="text/javascript" >            
    function redirect(url) {
        if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
            var referLink = document.createElement('a');
            referLink.href = url;
            document.body.appendChild(referLink);
            referLink.click();
        } else {
            location.href = url;
        }
    }
    </script>
    

    source

    【讨论】:

    • @billy 您是否找到了它不起作用的原因并找到了适合您的情况的解决方案?我没有同样的问题(我希望,还没有测试过),只是好奇
    • 不。我认为@Anjith 回答了这个问题
    【解决方案3】:

    当您尝试在弹出窗口或使用 window.location 发送引荐来源网址时,IE 不支持引荐来源网址。您可以通过多种方式发送引荐来源网址。但是,如果您尝试在服务器端获取它,如果通过 JS 弹出窗口更改位置或在使用 IE 时更改 JS 中的位置,则您将不会拥有它,因为 IE 内置安全问题。检查 window 或 window.open 属性。you can go here

    【讨论】:

      【解决方案4】:

      最简单的解决方案是您可以使用 window.opener.location.href,它适用于所有浏览器。

      【讨论】:

      • 无法获取未定义或空引用的属性“位置”
      【解决方案5】:

      试试这个:

      <script type="text/javascript">
      $("#button").click(function(){
      
              window.open("about:blank", "win_name", "height=370,width=365, top=50, left=90, scrollbars=yes,resizable=no,menubar=no");
              sForm = '<form action="url.php" method="post" target="win_name">';
              sForm += '</form>';
              //alert(sForm);return;
              $(sForm).appendTo('body').submit();
              return;
      
           });
      </script>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-21
        • 2011-05-07
        • 1970-01-01
        相关资源
        最近更新 更多