referer 实现防盗链
request_referer.java :
package cn.request; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; //referer防盗链 public class request_referer extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //设置浏览器以什么编码打开 response.setCharacterEncoding("UTF-8"); response.setContentType("text/html;UTF-8"); String referer = request.getHeader("referer");//获取请求头 //判断这个头是否为空,或这个头的首地址是否为http://localhost,如果不是则重定向 if(referer==null || !referer.startsWith("http://localhost") ) { response.sendRedirect("/Servlet_1/1.html"); return; } String str="你好"; response.getWriter().write(str); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } 如果在浏览器地址栏直接链接 : 则获取的请求头为空,因为不是从 链接过来的,属于盗链行为,则重定向