PageFilter.java 文件源码

java
阅读 31 收藏 0 点赞 0 评论 0

项目:BasicsProject 作者:
/**这个方法完成实际的过滤操作。当客户请求访问与过滤器关联的URL的时候,Servlet过滤器将先执行doFilter方法。FilterChain参数用于访问后续过滤器。*/
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        HttpServletRequest httpRequest = (HttpServletRequest) request;
        HttpServletResponse httpResponse = (HttpServletResponse) response;

        //忽略不过滤页面
        if(!Statics.ignore_login_page.contains(httpRequest.getServletPath())){
            long memberId = StorageUtil.init(httpRequest.getSession()).getLoginMemberId();
            if(memberId==ReturnUtil.NOT_LOGIN_CODE){
                String url = httpRequest.getScheme()+"://"+httpRequest.getServerName()+":"+httpRequest.getServerPort()+httpRequest.getContextPath();
                DataUtil.OutStreamByResponse(httpResponse, "<script type='text/javascript'>top.location.href= '"+url+Statics.Login_Page+"';</script>");
                return;
            }
        }
        chain.doFilter(request, response);
//      httpRequest.getScheme();//协议类型          http
//      httpRequest.getServerName();//域名        mycdsxlc.f3322.net
//      httpRequest.getServerPort();//端口号       8989
//      httpRequest.getContextPath();//项目名      /Report
//      httpRequest.getServletPath();//请求页面 /web/index.jsp
//      httpRequest.getQueryString();//参数       null
    }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号