0
02
13
48
请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

登出系统只能在首页吗?在商店页面的时候点击登出系统会被弹回,只有在index页面点才能登陆

登出系统只能在首页吗?在商店页面的时候点击登出系统会被弹回,只有在index页面点才能登陆,这是怎么回事呢,没有报错

正在回答 回答被采纳积分+3

插入代码

2回答

翔仔 2019-04-26 00:21:01
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
            throws Exception {
        // 从session中取出用户信息来
        Object userObj = request.getSession().getAttribute("user");
        if (userObj != null) {
            // 若用户信息不为空则将session里的用户信息转换成PersonInfo实体类对象
            PersonInfo user = (PersonInfo) userObj;
            // 做空值判断,确保userId不为空并且该帐号的可用状态为1,并且用户类型为店家
            if (user != null && user.getUserId() != null && user.getUserId() > 0 && user.getEnableStatus() == 1)
                // 若通过验证则返回true,拦截器返回true之后,用户接下来的操作得以正常执行
                return true;
        }
        // 若不满足登录验证,则直接跳转到帐号登录页面
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<script>");
        out.println("window.open ('" + request.getContextPath() + "/local/login?usertype=2','_self')");
        out.println("</script>");
        out.println("</html>");
        return false;
    }

主要是这段逻辑,会判断你如果登出,user的session被置为空之后,就跳转到登录页面

0 回复 有任何疑惑可以回复我~
翔仔 2019-04-25 00:23:26

只有index页面点登出才能打开登陆页面吗?其他页面登出没跳到登录页面?这个就需要同学调试一下,看看在其他页面选择登出的时候,有没有调用redirect的逻辑重定向到登录页面

0 回复 有任何疑惑可以回复我~
  • 提问者 appleday #1
    老师,具体怎么调呢,断点要打到哪里呀
    回复 有任何疑惑可以回复我~ 2019-04-25 15:22:41
  • 提问者 appleday #2
    老师,我是直接在您的代码上修改了自己的数据库和服务器IP运行的,只能在首页登出,服务端哪里配置的不对吗
    回复 有任何疑惑可以回复我~ 2019-04-25 16:31:09
  • 翔仔 回复 提问者 appleday #3
    看看在其他页面选择登出的时候,是否触发拦截器登出的逻辑,应该是在一个xxLoginInterceptor里面设置断点,在Debug模式下看看是否执行到类似的代码,同学,你如果还没有了解全貌,这样抓瞎是不建议的,建议跟着视频来,视频里面会添加拦截器去做登录验证,我这样一句两句也说不清楚
    回复 有任何疑惑可以回复我~ 2019-04-26 00:20:17
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号