在我想通过url跳转一个jsp或servlet之后,我通过url登录一个web应用程序。 我如何通过url直接进入第二个jsp页面
答案 0 :(得分:1)
有所有解决方案,
1。使用过滤器通过web.xml
拦截网址
2。使用Servlets
或Jsp
中的重定向或转发功能。
答案 1 :(得分:0)
Web.xml中的用户Servlet过滤器映射: 您的Web应用程序可能会定义具有特定用途的多个不同过滤器考虑一下,您定义了两个过滤器AuthenFilter和LogFilter。除了您需要创建如下所述的不同映射外,其余过程将保持如上所述:
答案 2 :(得分:0)
与servlet一样,有两种方法可以做到这一点。 HttpServletReponse.sendRedirect()实际上向浏览器发送一个响应,给它一个获取的URL而不是原始的URL,它可能位于不同的服务器上。另一个选择是使用RequestDispatcher在服务器上加载不同的资源,而不是加载到浏览器透明的资源。
答案 3 :(得分:0)
有用的例子,所以我减少了编写自己的代码。 SecureFilter检查当前会话以查看是否存在User对象;如果没有,它会将请求转发到登录表单。虽然几乎不是一个强大的组件,但您可以看到如何实现更有用的系统。
if (authorized) {
chain.doFilter(request, response);
return;
} else if (filterConfig != null) {
String login_page = filterConfig.getInitParameter("login_page");
if (login_page != null && !"".equals(login_page)) {
filterConfig.getServletContext().getRequestDispatcher(login_page).
forward(request, response);
return;
}
}
throw new ServletException
("Unauthorized access, unable to forward to login page");
}