用户一共发送两次请求,第一次访问正规服务器中的页面,第二次访问盗链者服务器中的页面,二个页面虽然内容相同,
但来源不相同,这样会出现数据安全的问题。
可以通过使用request对象的getHeader方法获取referer请求头信息,通过referer判断请求的来源地址,判断是否与当前项目统一。
页面
<form action="http://localhost:8080/项目根路径/MyServlet" method="get"></form>
//action填写完整的路径
Servlet
public class MyServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String referer = request.getHeader("referer");
//如果是正确的网站 继续处理
//如果不是 拒绝访问
if(referer!=null && referer.contains("http://localhost:8080/项目根路径/")){
System.out.println("正规网站");
}else{
System.out.println("钓鱼网站");
}
}
}