通过request.getHeader("Referer")可以获得上个页面的来源,有没有办法伪造这个referer属性.

解决方案 »

  1.   

    response.setHeader("refresh","3;url='regiest.jsp'");
      

  2.   

    response.setHeader("refresh","3;url='regiest.jsp'");
      

  3.   

    你服务器端伪造Referer干嘛?伪造给后续的处理看?
    使用Filter+RequestWrapper
    Filter:
    doFilter()
    chain.doFilter(new WrappedRequest(request), response);public class WrappedRequest extends HttpServletRequestWrapper {
      public WrappedRequest(HttpServletRequest request) {
        super(request);
      }
      public String getHeader(String name) {
        if ("referer".equalsIgnoreCase(name)) {
          return "你喜欢的Referer信息"; // 如果referer和request相关的话,可以(HttpServletRequest) super.getRequest()
        }
      }
    }
      

  4.   

    上面的方法漏掉了,  public String getHeader(String name) {
        if ("referer".equalsIgnoreCase(name)) {
          return "你喜欢的Referer信息"; // 如果referer和request相关的话,可以(HttpServletRequest) super.getRequest()
        }
        return super.getHeader(name);
      }