前言
本文为大家讲解的是关于Javascript中document.referrer
隐藏来源的方法探讨,感兴趣的同学参考下。
关于隐藏来路 Referrer 在某些情况下很有用,国外网赚界使用的非常广泛。比如流量提供方由于不想让联盟知道自己的流量来源,就需要隐藏自己来源网站的 referer。
document.referrer
document.referrer
是用来获取跳转链接的来源,正规的解释是:referrer
属性可返回载入当前文档的文档的 URL。
实际中使用在广告相关业务中较多,包括推广等。
举个例子:
比如我们从百度中跳转到w3c,那我们从w3c中可以获取到referrer,这个referrer就是
代码如下:
从http请求头部我们也可以找到这个referrer
同样我们在w3c页面中控制台中也获取到这个referrer。
清除来源
最常用的还是使用iframe来隐藏referrer。
下面来看一个例子:
<Meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<Meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
document.referrer
iframe.setAttribute('data-src',html);
iframe.setAttribute('src',src);
iframe.width = '500';
iframe.height = '300';
document.body.appendChild(iframe);
隐藏referrer
跳转至百度(有referrer):<script type="text/javascript">
var iframe = document.createElement('iframe'),html = '<!doctype html>
<meta charset="utf-8">跳转至百度(无referrer):<a target="_blank" href="https://www.baidu.com/">referrer test',src = 'javascript:document.write(window.frameElement.getAttribute(\'data-src\'))';iframe.setAttribute('data-src',html);
iframe.setAttribute('src',src);
iframe.width = '500';
iframe.height = '300';
document.body.appendChild(iframe);
效果如图:
当我们点击有referrer的a标签的时候,在百度页面我们可以看到referrer。
当我们点击ifame中嵌套的a标签的时候,在百度页面我们可以看到referrer为空字符串。