(求助)jfinal setCookie设置了半小时,需求每次操作自动延长到期?

目前设置半小时:

// 传递给控制层的 cookie
long liveSeconds =  60 * 60;

// expireAt 用于设置 session 的过期时间点,需要转换成毫秒
long expireAt = System.currentTimeMillis() + (liveSeconds * 1000);
session.setExpireAt(expireAt);

打算在LoginSessionInterceptor修改:

不知道能否生效!请问其他大神是怎么处理?

评论区

JFinal

2021-03-26 12:43

设置错了, session 与 cookie 的设置是不同的,用一下
setCookie(...)

在 jfinal admin 或者 jfinal club 中搜索 setCookie(...) 参考着设置

山东小木

2021-03-27 09:59

登录的时候 创建session 并且写到cookie中 然后拦截器里获取cookie 校验是否合法就可以了 你的意思是是否需要每次拦截到判断cookie正常的话 跟tomcat默认半小时session不活动就清空一样 给他每次请求都再次计算一下延期满足半小时是吧?

山东小木

2021-03-27 10:00

一般都是登录的时候设置保持登录 就把持3天7天半个月 一个月这种时间长度就不用管了 到期cookie自动清理 拦截器没有找到就判定过期 跳转到登录页面了

山东小木

2021-03-27 10:02

@JFinal 他意思是 如果你每次请求拦截到 都重新设置一下半小时来模拟服务器session 在半小时里没有交互就掉线的行为

fmpoffice

2021-03-30 15:11

@山东小木 对的,每次action重置了cookie