我有一个通过REST进行通信的后端应用程序和UI应用程序。我想为UI提供检查会话是否已过期的功能-如果会话已过期,则UI将显示一个对话窗口。
这个想法是在每个请求上设置cookie的会话到期时间,然后UI将启动计时器,当当前时间与到期时间相同时,它将显示会话到期窗口。
为此,我实现了过滤器
return new OncePerRequestFilter() {
@Override
protected void doFilterInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, FilterChain filterChain) throws ServletException, IOException {
HttpSession session = httpServletRequest.getSession(false);
if (null != session) {
Cookie sessionExpireTime = new Cookie("SESSION_EXPIRE_TIME", "?????");
sessionExpireTime.setSecure(true);
sessionExpireTime.setHttpOnly(true);
httpServletResponse.addCookie(sessionExpireTime);
}
filterChain.doFilter(httpServletRequest, httpServletResponse);
}
};
但是如何设置会话的到期时间?