liangzy 发表于 2018-6-13 13:39:08

页面风格为 : VUE+ElementUI风格时,sessiontimeout 到期,点查询...

页面风格为 : VUE+ElementUI风格时,sessiontimeout 到期,点查询,系统没有引导到登陆页面,一直在转圈啊。

admin 发表于 2018-6-13 15:41:10

发帖,请详细,截图配合代码

liangzy 发表于 2018-6-14 07:46:40

本帖最后由 liangzy 于 2018-6-14 07:48 编辑

admin 发表于 2018-6-13 15:41 static/image/common/back.gif
发帖,请详细,截图配合代码
1.web.xml改session-timeout为3分钟,如下图:


2.页面通过代online表单开发生成,页面风格如下图:

3.生成的页面,如下图:


4.系统不进行任何操作,3分钟(session-timeou时间,已在web.xml设置)之后,再点击 上图(第3步)中的查询按钮,一直出现如下图的情况,没有查询到数据:(建议程序在session-timeout之后,应该引导到登陆页面去)


5.此问题,管理员自已很容易就可以模拟出来的。急盼回复,谢谢!!

admin 发表于 2018-6-14 10:03:05

好的,我们验证下

liangzy 发表于 2018-6-15 08:20:42

admin 发表于 2018-6-14 10:03 static/image/common/back.gif
好的,我们验证下

在jquery的ajax处理session-timeout时,我们是这样处理的,希望对你们有帮助:
1.首先在后台java拦截器中处理下:

2.前端jsp页面中,处理如下:

3.你们现在是vue的get和post方法,就不太明白怎么去处理了。
4.你们所有的ajax在session-timeout超时,都是没有处理的。
5.你们的:response.sendRedirect(request.getSession().getServletContext().getContextPath()+"/webpage/login/timeout.jsp");这句在ajax时,session-time0ut是没有用的,不会引导到timeout.jsp页面的。

jeecg_ty 发表于 2018-6-20 16:33:49

说的很有道理,但根本问题在于:ajax请求怎么跳转页面?事实上现在的解决办法都是在前端处理,如果这么做了,所有的ajax都需要改,显然不合理,或是修改jquery源码。。。先在拦截器中返回一个状态吗,源码中get到这个状态立即跳转超时页面。:Q:Q

liangzy 发表于 2018-8-11 17:26:13

一行代码解决:
top.location.href = 'loginController.do?login';

admin 发表于 2018-8-11 18:24:01

感谢
页: [1]
查看完整版本: 页面风格为 : VUE+ElementUI风格时,sessiontimeout 到期,点查询...