我有一些带有Jersey(Glassfish)的rest应用,并由SpringSecurity保护。 例如,在调用某些REST API时,需要一些代码在10分钟后以编程方式注销当前用户。
我尝试了一些类似的代码:
new Timer().schedule(new TimerTask() {
@Override
public void run() {
final HttpServletRequest req = request;
req.getSession().invalidate();
rememberMeServices.logout(req, null, null);
}
}, 100000);
或
new SecurityContextLogoutHandler().logout(request, null, null);
我的问题是上面的带有计时器且没有计时器的工作代码无法正常工作, 在春季安全会议或http会话中调用一些休息api时如何注销?