HTTP headers是HTTP请求和相应的核心模块,它承载了关于客户端浏览器、请求页面、服务器等相关信息。Referer是HTTP头中的一个属性,告诉服务
器我是从哪个页面链接过来的,所携带的信息用于做统计,也可以用来防盗链。
获取方式有两种:
1服务器端获取
Java中获取referer的方法是:request.getHeader("referer")
String referer = request.getHeader("referer"); //getServerName() 返回网站的域名 if(referer==null || !referer.contains(request.getServerName())){ }else{}
request.getHeader("referer")可用的情况:
1.<a href="">
2.表单提交
不可用的情况:
1.从收藏夹链接
2.自定义地址
3.浏览器直接输入
...
2 js获取
利用js的 var ref=document.referrer 方法可以准确地判断网页的真实来路。
然后可以使用ref.indexOf("xx")==-1判断网页来路
然而有时候Javascript中读到的referrer却是空字符串。下面提供园友的博客,供需要时参考