我只是想问一下如何确保用户仍然登录。如果他/她不是,则不允许访问页面。请注意,在登录页面时,我使用过滤器来检查用户是否存在。我想知道我是否可以使用过滤器来检查用户是否仍然登录?唯一的问题是,我试过,但是当我直接在地址栏上输入网址时,页面仍显示,现在显示空值。如何在Java中正确执行此操作?
答案 0 :(得分:2)
您使用的是哪种网络框架?
是的,在大多数情况下使用filters/interceptors
都可以实现,特别是普通的vanilla Web应用程序。在您的情况下,您很可能没有使无效用户无效/无效,或者没有将无效用户重定向到另一个页面(例如login
页面)。
如果您使用的是Struts或Spring,我强烈建议您朝着Spring Security (Former ACEGI)或Apache Shiro的方向前进,因为尽管您的自制解决方案似乎可行,但它们不是恶搞证明。
答案 1 :(得分:1)
在用户登录后设置会话变量isLoggedIn = true。在过滤器中,检查会话是否为空,或者登录标志是否为false。如果没有,请重定向到某个页面,说明您必须登录才能继续。