Skip to content

Commit

Permalink
test: 解决 Cookie 异步存储 NULL 问题
Browse files Browse the repository at this point in the history
  • Loading branch information
cdk8s-zelda committed Nov 12, 2019
1 parent 49c23d3 commit ef214fa
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,13 @@ public String formLogin(final HttpServletRequest request, final HttpServletRespo
boolean isRememberMe = oauthFormLoginParam.getBoolIsRememberMe();
String tgc = oauthGenerateService.generateTgc();

oauthSaveService.saveTgcToRedisAndCookie(response, tgc, userInfoRedisKey, userAgent, requestIp, isRememberMe);
Integer maxTimeToLiveInSeconds = oauthProperties.getTgcAndUserInfoMaxTimeToLiveInSeconds();
if (isRememberMe) {
maxTimeToLiveInSeconds = oauthProperties.getRememberMeMaxTimeToLiveInSeconds();
}
CookieUtil.setCookie(response, GlobalVariable.OAUTH_SERVER_COOKIE_KEY, tgc, maxTimeToLiveInSeconds, true, oauthProperties.getTgcCookieSecure());

oauthSaveService.saveTgcToRedisAndCookie(tgc, maxTimeToLiveInSeconds, userInfoRedisKey, userAgent, requestIp, isRememberMe);

String redirectUrl;
if (StringUtil.equalsIgnoreCase(oauthFormLoginParam.getResponseType(), GlobalVariable.OAUTH_TOKEN_RESPONSE_TYPE)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,7 @@ public void saveCodeToRedis(String code, String tgc, String userInfoRedisKey, St
}

@Async
public void saveTgcToRedisAndCookie(HttpServletResponse response, String tgc, String userInfoRedisKey, String userAgent, String requestIp, boolean isRememberMe) {
Integer maxTimeToLiveInSeconds = oauthProperties.getTgcAndUserInfoMaxTimeToLiveInSeconds();

public void saveTgcToRedisAndCookie(String tgc, Integer maxTimeToLiveInSeconds, String userInfoRedisKey, String userAgent, String requestIp, boolean isRememberMe) {
OauthTgcToRedisBO oauthTgcToRedisBO = new OauthTgcToRedisBO();
oauthTgcToRedisBO.setIat(DatetimeUtil.currentEpochSecond());
oauthTgcToRedisBO.setUserAgent(userAgent);
Expand All @@ -77,12 +75,6 @@ public void saveTgcToRedisAndCookie(HttpServletResponse response, String tgc, St
oauthTgcToRedisBO.setBoolIsMobile(UserAgentUtil.isMobile(userAgent));
oauthTgcToRedisBO.setUserInfoRedisKey(userInfoRedisKey);

if (oauthTgcToRedisBO.getBoolIsRememberMe()) {
maxTimeToLiveInSeconds = oauthProperties.getRememberMeMaxTimeToLiveInSeconds();
}

CookieUtil.setCookie(response, GlobalVariable.OAUTH_SERVER_COOKIE_KEY, tgc, maxTimeToLiveInSeconds, true, oauthProperties.getTgcCookieSecure());

oauthTgcToRedisBO.setIat(DatetimeUtil.currentEpochSecond());
tgcRedisService.set(tgc, oauthTgcToRedisBO, maxTimeToLiveInSeconds, TimeUnit.SECONDS);
}
Expand Down

0 comments on commit ef214fa

Please sign in to comment.