2022-03-31 17:52

就是要重新创建jwt,因为jwt是加密的,肯定不能直接修改。后端重新创建后,带给前端,前端保存起来,下次用这个新的就行了呗

2022-03-30 23:44

每次前端访问,都带上上次的jwt,每次controller执行完,都把前端带过来的jwt解析,判断里面的用户数据区最后访问时间,例如过期30分钟,当发现超过过期时间一半的时候,就更新这个时间,然后带回到客户端,客户端每次都从response的header里那最新的jwt存到浏览器本地存储里。如果超出过期期限,就清空jwt,前端拿不到jwt,就导航到登录界面。

2022-03-30 23:21

@云破月 是一个意思,只不过前端要做好拦截就行了。我的项目是基于jquery的。另外使用easyui,这个控件库封装了很多东西,侵入这个库又带来维护的麻烦。所以就做了一个redirect.js,用来设置全局jquery的ajaxComplete实现无侵入拦截。

2022-03-11 14:58

JFinal自带的redis插件,是基于jedis的jar库实现的。本身jedis是支持redis集群、哨兵模式、单机这几种情况的。所以,如果可以,你模仿着自己写一个吧。

2022-03-05 01:17

@yuwen01 第一:cookie里不能放user对象,不安全。第二:cookie里有,但不一定有台就没过期(各种可能性导致服务器找不到登录信息了)。

2022-03-03 14:21

@杜福忠 问题解决方案我发到分享里了。感谢!
https://jfinal.com/share/2534

2022-03-03 10:55

@happyboy 因为知道杜总是JFinal大神级的人物,所以就直接at他了。

2022-03-03 00:03

@杜福忠 如果是请求后端返回json,这做完全没问题。并且我现在也是这么做的。但我这里请求的是后端,是渲染一个html页面。这个时候,我就没办法判断返回值了。
比如我请求一个controller方法,渲染一个form在前端的弹窗里。这时候如果登录超时了,我想让浏览器直接导航到登录页面。但现在就把登录页面渲染在弹窗里。这个问题困扰我很久了。

2022-02-25 22:00

看到标题,就知道是什么原因了

2022-02-24 11:33

@q76267454 就是用户可以自定义发送间隔(定时任务的时间间隔配置),然后启动定时任务执行。建议界面上给一个定时任务的时间可视化编辑,否则用户还要学习定时表达式,有点费劲。

2022-02-24 11:28

已尝鲜,很香!

2022-02-20 15:43

理论上来说,不管是Model还是Record,从数据库检索出来数据后,修改了哪个字段的值,update的时候,才拼接该字段。这才是合理的。