繁体   English   中英

如何获取iframe父页面的引用来源?

[英]How to get referrer source of iframe parent page?

我们正在使用iframe条目表单代码并将其放在网站页面上。 我们希望能够看到有人来自哪里,如果他们降落在页面上并将他们的信息输入到表单中。

例如:我们的iframe嵌入在页面上。 该页面的URL将发布到Facebook。 有人点击链接,登陆页面,并将他们的信息输入我们的iframe报名表。 然后我们希望能够说,1个推荐来自Facebook。

我们尝试使用$ _SERVER ['HTTP_REFERER'],但这只返回嵌入iframe的父页面网址,这是我们不想要的。 我们想要引用父页面的实际URL(在上面的示例中,它将是Facebook)。 无论如何都要抓住这些信息?

遗憾的是,跨域安全性会阻止此信息,因为您的iframe与嵌入它的父页面不在同一个域中。 您可以检查iframe中的引荐来源,但它只会为您提供嵌入它的网页的名称。

如果您在同一个域中,则可以访问javascript中的document.referrer ,并可以通过iframe检索它。

我确实想要一个解决方案。

如果您使用脚本在父页面上嵌入iframe,则可以执行此类操作。

function createIFrame() {
    var ref = document.referrer;
    ifrm = document.createElement("iframe"); 
    ifrm.setAttribute("src", "http://www.nba.com/?referrer="+ref); 
    ifrm.style.width = 640+"px"; 
    ifrm.style.height = 480+"px"; 
    document.body.appendChild(ifrm);
} 

createIFrame();

这将允许您在iframe中从您的URL读取查询字符串referrer并将该信息发送到您的服务器。 它需要你用你的小部件打包一些javascript,但它可能是你唯一的解决方案。

JSFiddle - http://jsfiddle.net/7QbPN/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM