Skip to content

Commit

Permalink
fix : 필요없는 부분 삭제
Browse files Browse the repository at this point in the history
  • Loading branch information
YunJuwon0825 committed Feb 23, 2025
1 parent 080004a commit 1cd1eea
Showing 1 changed file with 8 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,12 @@
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.security.Key;
import java.time.Duration;
import java.util.Date;
import java.util.Optional;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.security.oauth2.jwt.JwtException;
import org.springframework.stereotype.Service;

Expand Down Expand Up @@ -48,10 +46,8 @@ public class JwtService {
private static final String ACCESS_TOKEN_SUBJECT = "AccessToken";
private static final String REFRESH_TOKEN_SUBJECT = "RefreshToken";
private static final String EMAIL_CLAIM = "email";
private static final String BEARER = "Bearer ";

private final UserRepository userRepository;
private final RedisTemplate<String, String> redisTemplate;
private final RedisService redisService;

private Key key;
Expand All @@ -77,9 +73,11 @@ public String createAccessToken(String email) {

public String reIssueRefreshToken(User user) {
String reIssuedRefreshToken = this.createRefreshToken();
String oldRefreshToken= user.updateRefreshToken(reIssuedRefreshToken);
String oldRefreshToken = user.updateRefreshToken(reIssuedRefreshToken);

if (oldRefreshToken != null) {redisService.deleteCacheRefreshToken(oldRefreshToken);}
if (oldRefreshToken != null) {
redisService.deleteCacheRefreshToken(oldRefreshToken);
}
userRepository.saveAndFlush(user);

redisService.cacheRefreshToken(reIssuedRefreshToken);
Expand All @@ -89,7 +87,7 @@ public String reIssueRefreshToken(User user) {

public String createRefreshToken() {
Date now = new Date();
String newRefreshToken= Jwts.builder()
String newRefreshToken = Jwts.builder()
.setSubject(REFRESH_TOKEN_SUBJECT)
.setExpiration(new Date(now.getTime() + refreshTokenExpirationPeriod))
.signWith(key, SignatureAlgorithm.HS256)
Expand All @@ -98,12 +96,6 @@ public String createRefreshToken() {
return newRefreshToken;
}

private void CacheRefreshToken(String refreshToken) {
String key = "refreshToken:" + refreshToken;
// 리프레시 토큰을 Redis에 저장 (예: 7일 만료)
redisTemplate.opsForValue().set(key, refreshToken, Duration.ofDays(7));
}

public Optional<String> extractAccessTokenFromCookie(HttpServletRequest request) {

if (request.getCookies() != null) {
Expand Down Expand Up @@ -135,7 +127,9 @@ public boolean isRefreshTokenValid(String refreshToken) {

// cache에 refreshToken이 유효성 검증
String userRefreshToken = redisService.refreshTokenGet(refreshToken);
if (userRefreshToken != null) {return userRefreshToken.equals(refreshToken);}
if (userRefreshToken != null) {
return userRefreshToken.equals(refreshToken);
}

// DB에 refreshToken이 유효성 검증
Optional<User> user = userRepository.findByRefreshToken(refreshToken);
Expand Down

0 comments on commit 1cd1eea

Please sign in to comment.