纯后端验证没问题.我使用的是SpringSecurity记住我功能,验证通过后在放一个session作为判断依据,使用vue在mounted调用某些接口,使用axios请求数据,关闭浏览器后,再次打开上次地址,就会出现以下问题,浏览器不关闭是不会出现以下问题
前端的问题
后端的问题
总之会导致记住我失效.
但是其前端如果把mounted调用的方法延迟大概500ms,这个问题就不存在了,但会影响体验,请问这是什么原因呢
您的每一个用心回答,都会让这个世界变得更美好一些!
都告诉我我哪里错了,稍微看一下源码就好。
这个异常是从这里抛出来的
if (!presentedToken.equals(token.getTokenValue())) { tokenRepository.removeUserTokens(token.getUsername()); throw new CookieTheftException( messages.getMessage( "PersistentTokenBasedRememberMeServices.cookieStolen", "Invalid remember-me token (Series/token) mismatch. Implies previous cookie theft attack.")); }
这是两个值的获取方式
final String presentedToken = cookieTokens[1]; PersistentRememberMeToken token = tokenRepository .getTokenForSeries(presentedSeries);
一个是从cookie里拿,一个是从存储里拿。
打个断点,就知道是谁的问题了。
这个类PersistentTokenBasedRememberMeServices
方法:processAutoLoginCookie
都告诉我我哪里错了,稍微看一下源码就好。
这个异常是从这里抛出来的
这是两个值的获取方式
一个是从cookie里拿,一个是从存储里拿。
打个断点,就知道是谁的问题了。
这个类PersistentTokenBasedRememberMeServices
方法:processAutoLoginCookie