File tree Expand file tree Collapse file tree
src/main/java/com/server/running_handai Expand file tree Collapse file tree Original file line number Diff line number Diff line change 99import com .server .running_handai .domain .member .dto .TokenRequestDto ;
1010import com .server .running_handai .domain .member .dto .TokenResponseDto ;
1111import com .server .running_handai .domain .member .service .MemberService ;
12+ import io .swagger .v3 .oas .annotations .Hidden ;
1213import io .swagger .v3 .oas .annotations .Operation ;
1314import io .swagger .v3 .oas .annotations .responses .ApiResponse ;
1415import io .swagger .v3 .oas .annotations .responses .ApiResponses ;
@@ -110,4 +111,12 @@ public ResponseEntity<CommonResponse<MemberInfoDto>> getMyInfo(
110111 return ResponseEntity .ok (CommonResponse .success (ResponseCode .SUCCESS , memberInfo ));
111112 }
112113
114+ @ Hidden
115+ @ PutMapping ("/temp-update" )
116+ public ResponseEntity <CommonResponse <Void >> updateTestUserToken (@ AuthenticationPrincipal CustomOAuth2User customOAuth2User ) {
117+ Long memberId = customOAuth2User .getMember ().getId ();
118+ memberService .updateRefreshTokenForTestUser (memberId );
119+ return ResponseEntity .ok (CommonResponse .success (ResponseCode .SUCCESS , null ));
120+ }
121+
113122}
Original file line number Diff line number Diff line change @@ -277,4 +277,11 @@ public MemberInfoDto getMemberInfo(Long memberId) {
277277
278278 return MemberInfoDto .from (member , bookmarkInfo , myCourseInfo );
279279 }
280+
281+ @ Transactional
282+ public void updateRefreshTokenForTestUser (Long memberId ) {
283+ Member member = memberRepository .findById (memberId ).orElseThrow (() -> new BusinessException (ResponseCode .MEMBER_NOT_FOUND ));
284+ String longRefreshToken = jwtProvider .createLongLivedRefreshToken ();
285+ member .updateRefreshToken (longRefreshToken );
286+ }
280287}
Original file line number Diff line number Diff line change @@ -25,6 +25,8 @@ public class JwtProvider {
2525 @ Value ("${jwt.refresh-expiration}" )
2626 private Long refreshExpiration ;
2727
28+ private static final long THIRTY_DAYS_IN_MS = 1000L * 60 * 60 * 24 * 30 ;
29+
2830 /**
2931 * Secret Key 객체를 생성합니다.
3032 * Base64로 인코딩된 Secret Key를 디코딩하여 HMAC 서명용 Secret Key 객체로 반환합니다.
@@ -62,6 +64,13 @@ public String createRefreshToken() {
6264 .compact ();
6365 }
6466
67+ public String createLongLivedRefreshToken () {
68+ return Jwts .builder ()
69+ .setExpiration (new Date (System .currentTimeMillis () + THIRTY_DAYS_IN_MS ))
70+ .signWith (getSigningKey (), SignatureAlgorithm .HS256 )
71+ .compact ();
72+ }
73+
6574 /**
6675 * Jwt Token의 유효성(서명, 만료 등)을 검증합니다.
6776 *
You can’t perform that action at this time.
0 commit comments