Filter不过滤CSS和JS

Filter不过滤CSS和JS

Filter是Java Web中用于禁止浏览器在未登录的情况下访问内部网址。

用法就不说了,看了下网上的用法基本都是贴的李刚的那本J2EE书上的代码。

需要注意的是,如果你直接设置  <url-pattern>/*</url-pattern>, 那么你的CSS和JS文件也会一同被过滤掉。

那么怎么样解决呢?网上又说建一个jspPage的文件夹把jsp页面放进去然后 设置 <url-pattern>jspPage/*</url-pattern>,我想说这个方法对于简单的页面跳转也许可以,但是遇到带有导航栏的网站时调整会出现混乱,不可取。

建议做法是:改Filter文件里的代码 

if( session.getAttribute(“user”)== null && !requestPath.endsWith(loginPage) && !requestPath.endsWith(LoginServlet) &&  !requestPath.endsWith(“.css”)&&!requestPath.endsWith(“.js”) ){
request.setAttribute(“loginError” , “您还没有登录呢”);

request.getRequestDispatcher(loginPage).forward(request, response);

}

Filter不过滤CSS和JS

相关文章:

你感兴趣的文章:

标签云: