永夜-Evernight

永夜降临之前,你都有改变的资格

Filter指定路劲不进行拦截

web.xml中配置

<!-- token filter-->
    <filter>
        <filter-name>tokenFilter</filter-name>
        <filter-class>com.zpkj.template.filter.TokenFilter</filter-class>
        <init-param>
            <param-name>ignores</param-name>
            <param-value>/app/register,/app/login</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>tokenFilter</filter-name>
        <url-pattern>/app/*</url-pattern>
    </filter-mapping>

Filter实现类中代码

public class TokenFilter implements Filter {
    private String excludedPage;
    private String[] excludedPages;

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        excludedPage = filterConfig.getInitParameter("ignores");//此处的ignores就是在web.xml定义的名称一样。
        if (excludedPage != null && excludedPage.length() > 0){
            excludedPages = excludedPage.split(",");
        }
    }



    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain) throws IOException, ServletException {
        HttpServletRequest request = (HttpServletRequest) servletRequest;
        HttpServletResponse response = (HttpServletResponse) servletResponse;

        // 定义表示变量 并验证用户请求URL 是否包含不过滤路径
        boolean flag = false;
        for (String page:excludedPages) {
            if (request.getRequestURI().equals(page)){
                flag = true;
            }
        }
        if(flag){
            chain.doFilter(request,response);
        }

    }

    @Override
    public void destroy() {

    }
}


标题:Filter指定路劲不进行拦截
作者:luomuren
地址:http://luomuren.top/articles/2022/03/17/1647528737925.html