-
Notifications
You must be signed in to change notification settings - Fork 0
feat: 리프레쉬 토큰을 RDBMS에서 관리한다 #316
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 17 commits
8c40eea
93a1839
800f5af
cab83dc
b6450c4
0baaa04
1f0d42c
edc350b
548c462
8debc82
f9c2d21
d98a809
4a881a4
bbafaa0
49bcdb4
7324607
ca59967
a3f7aba
2b8bafc
c2412b3
9bad834
4209ea6
6663547
6171a67
e1c5eb7
cb0d50e
69be202
b4d4643
a3d22c0
54b2d86
e89f3b0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| * @bbbang105 | ||
| * @bbbang105 @anxi01 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,5 @@ | ||
| addReviewers: true | ||
| addAssignees: author | ||
| reviewers: | ||
| - bbang105 | ||
| - bbbang105 | ||
| - anxi01 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| name: Auto Assign | ||
|
|
||
| on: | ||
| pull_request: | ||
| types: [opened, ready_for_review] | ||
|
|
||
| jobs: | ||
| assign: | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| pull-requests: write | ||
| steps: | ||
| - uses: kentaro-m/auto-assign-action@v2.0.1 | ||
| with: | ||
| configuration-path: '.github/auto-assign-config.yaml' |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,12 +1,14 @@ | ||
| package side.onetime.controller; | ||
|
|
||
| import jakarta.validation.Valid; | ||
| import lombok.RequiredArgsConstructor; | ||
| import org.springframework.http.ResponseEntity; | ||
| import org.springframework.web.bind.annotation.PostMapping; | ||
| import org.springframework.web.bind.annotation.RequestBody; | ||
| import org.springframework.web.bind.annotation.RequestMapping; | ||
| import org.springframework.web.bind.annotation.RestController; | ||
|
|
||
| import jakarta.servlet.http.HttpServletRequest; | ||
| import jakarta.validation.Valid; | ||
| import lombok.RequiredArgsConstructor; | ||
| import side.onetime.dto.token.request.ReissueTokenRequest; | ||
| import side.onetime.dto.token.response.ReissueTokenResponse; | ||
| import side.onetime.global.common.ApiResponse; | ||
|
|
@@ -24,13 +26,15 @@ public class TokenController { | |
| * 액세스 토큰 재발행 API. | ||
| * | ||
| * @param reissueAccessTokenRequest 리프레쉬 토큰을 포함한 요청 객체 | ||
| * @param httpRequest HttpServletRequest (IP, User-Agent 추출용) | ||
| * @return 재발행된 액세스 토큰과 리프레쉬 토큰을 포함하는 응답 객체 | ||
| */ | ||
| @PostMapping("/action-reissue") | ||
| public ResponseEntity<ApiResponse<ReissueTokenResponse>> reissueToken( | ||
| @Valid @RequestBody ReissueTokenRequest reissueAccessTokenRequest) { | ||
| @Valid @RequestBody ReissueTokenRequest reissueAccessTokenRequest, | ||
| HttpServletRequest httpRequest) { | ||
|
|
||
| ReissueTokenResponse reissueTokenResponse = tokenService.reissueToken(reissueAccessTokenRequest); | ||
| ReissueTokenResponse reissueTokenResponse = tokenService.reissueToken(reissueAccessTokenRequest, httpRequest); | ||
|
||
| return ApiResponse.onSuccess(SuccessStatus._REISSUE_TOKENS, reissueTokenResponse); | ||
| } | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,12 +1,31 @@ | ||
| package side.onetime.controller; | ||
|
|
||
| import org.springframework.http.ResponseEntity; | ||
| import org.springframework.web.bind.annotation.DeleteMapping; | ||
| import org.springframework.web.bind.annotation.GetMapping; | ||
| import org.springframework.web.bind.annotation.PatchMapping; | ||
| import org.springframework.web.bind.annotation.PostMapping; | ||
| import org.springframework.web.bind.annotation.PutMapping; | ||
| import org.springframework.web.bind.annotation.RequestBody; | ||
| import org.springframework.web.bind.annotation.RequestMapping; | ||
| import org.springframework.web.bind.annotation.RequestParam; | ||
| import org.springframework.web.bind.annotation.RestController; | ||
|
|
||
| import jakarta.servlet.http.HttpServletRequest; | ||
| import jakarta.validation.Valid; | ||
| import lombok.RequiredArgsConstructor; | ||
| import org.springframework.http.ResponseEntity; | ||
| import org.springframework.web.bind.annotation.*; | ||
| import side.onetime.domain.enums.GuideType; | ||
| import side.onetime.dto.user.request.*; | ||
| import side.onetime.dto.user.response.*; | ||
| import side.onetime.dto.user.request.CreateGuideViewLogRequest; | ||
| import side.onetime.dto.user.request.LogoutUserRequest; | ||
| import side.onetime.dto.user.request.OnboardUserRequest; | ||
| import side.onetime.dto.user.request.UpdateUserPolicyAgreementRequest; | ||
| import side.onetime.dto.user.request.UpdateUserProfileRequest; | ||
| import side.onetime.dto.user.request.UpdateUserSleepTimeRequest; | ||
| import side.onetime.dto.user.response.GetGuideViewLogResponse; | ||
| import side.onetime.dto.user.response.GetUserPolicyAgreementResponse; | ||
| import side.onetime.dto.user.response.GetUserProfileResponse; | ||
| import side.onetime.dto.user.response.GetUserSleepTimeResponse; | ||
| import side.onetime.dto.user.response.OnboardUserResponse; | ||
| import side.onetime.global.common.ApiResponse; | ||
| import side.onetime.global.common.status.SuccessStatus; | ||
| import side.onetime.service.UserService; | ||
|
|
@@ -28,9 +47,10 @@ public class UserController { | |
| */ | ||
| @PostMapping("/onboarding") | ||
| public ResponseEntity<ApiResponse<OnboardUserResponse>> onboardUser( | ||
| @Valid @RequestBody OnboardUserRequest onboardUserRequest) { | ||
| @Valid @RequestBody OnboardUserRequest onboardUserRequest, | ||
| HttpServletRequest httpRequest) { | ||
|
|
||
| OnboardUserResponse onboardUserResponse = userService.onboardUser(onboardUserRequest); | ||
| OnboardUserResponse onboardUserResponse = userService.onboardUser(onboardUserRequest, httpRequest); | ||
|
||
| return ApiResponse.onSuccess(SuccessStatus._ONBOARD_USER, onboardUserResponse); | ||
| } | ||
|
|
||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.