我有一个用Servlets和JSP开发的应用程序。 但这是我的问题:
没有登录我不希望任何JSP被渲染。当我请求特定的URL(某些JSP)时,我的代码应对其进行身份验证,如果失败则应将其重定向到登录页面,一旦登录成功,则应自动重定向先前请求的页面。
这通常发生在大多数网站上。 我们如何实现这个Servlet和JSP。
谢谢你,问候
答案 0 :(得分:0)
您可以将原始请求网址作为参数传递到重定向网址,并在服务器端完成重定向操作后(在身份验证后),从请求参数中检索网址并重定向或转发给它。
Original request
-----------------
if(!authenticated){
response.sendRedirect("/authURL?originalURL=somepath");
}
Authentication Request
---------------------
if(authenticationSuccessful){
String originalURL = request.getParam("originalURL");
if(originalURL != null){
response.sendRedirect("/originalURL");
}
}
另一种方法是使用重定向设置cookie。 Cookie值可以包含原始网址。