src/util/LoginFilter.java
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
package util;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* @author RAZR
*这个类主要用来鉴权操作,所有的请求 都经过这个类过滤,检查是否session的信息有效,有效则允许用户的请求
*无效则将用户带到登录界面
*/
public class LoginFilter implements Filter {
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
HttpSession session = request.getSession();
// 如果session不为空,则可以浏览其他页面
String url = request.getServletPath();
//System.out.println(url);
String path = request.getRequestURI();
//这里判断目录,后缀名,当然也可以写在web.xml中,用url-pattern进行拦截映射
if ((!request.getServletPath().equals("/admin/login.action"))
&& (!request.getServletPath().equals("/admin/login.jsp"))
&& (!request.getServletPath().equals("/admin/relogin.jsp"))
&& (!request.getServletPath().equals("/admin/lib/font-awesome/css/font-awesome.css"))
&& (!request.getServletPath().equals("/admin/lib/bootstrap/js/bootstrap.js"))
&& (!request.getServletPath().equals("/admin/lib/jquery-1.7.2.min.js"))
&& (!request.getServletPath().equals("/admin/stylesheets/theme.css"))
&& (!request.getServletPath().equals("/admin/lib/bootstrap/css/bootstrap.css"))
) {
// 登陆页面无需过滤
if(path.indexOf("/admin/login.jsp") > -1) {
chain.doFilter(request, response);
return;
}
if (session.getAttribute("admin") == null) {
session.invalidate();
response.setContentType("text/html;charset=gb2312");
PrintWriter out = response.getWriter();
out.println("<script language='javascript' type='text/javascript'>");
后面还有 17 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。
