-
米脂
这个思路是不成立的。无论你是自动刷新,还是用户操作刷新,只要存在着操作,SESSION就会自动更新声明周期,你判断或不判断它都会这样做。不过可以尝试记录用户操作,并记录当前用户最后一次操作的时间,ajax刷新的同时读取此用户最后操作,和当前时间做比较,如果判断此用户长时间没有进行操作,则强制终止会话并踢出系统。
-
侃侃尔雅
session过期时间为30分钟的话,js轮询就轮询31分钟,在第31分钟主动提示过期并清除session,同时跳转指定页面。
-
catspeake
你的登录采用常规登录,使用servlet或者jsp来设置session的,也就是你那个session是在一次请求里面设置的,你的ajax里面如果可以调用到request对象,那么你使用request.getSession().getAttribute("XXX")就能获得到jsp或者servlet里面设置的session值了。你得看看你的ajax到底是不是调用到了request对象(HttpServletRequest),把这个问题解决,你的问题就解决了。
-
梵蒂冈之花
如果要发送ajax请求的话,用Javascript可以,推荐使用jQuery,方法使用起来更便捷。至于是用页面加载事件来触发,还是做个按钮来触发Javascript代码发送ajax请求都可以的。至于session,你是要从前台页面访问session中保存的数据吗?可以用Javascript发送ajax 请求来访问一个PHP页面,用PHP代码获取当前session中的数据,再让PHP代码返回数据给浏览器前台页面,大体思路就是这样。