Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package kr.kro.photoliner.domain.user.controller;

import java.net.URI;
import kr.kro.photoliner.common.dto.response.JwtResponse;
import kr.kro.photoliner.domain.user.dto.response.UserInfoResponse;
import kr.kro.photoliner.domain.user.service.UserService;
import kr.kro.photoliner.global.auth.Auth;
Expand All @@ -21,13 +20,10 @@ public class UserController {

private final UserService userService;
private final KakaoAuthService kakaoAuthService;
private static final String LOGIN_REDIRECT_URL = "http://localhost:5173/login/kakao";

@GetMapping("/login/kakao")
public ResponseEntity<JwtResponse> login(@RequestParam(value = "code") String authorizationCode) {
JwtResponse jwtResponse = userService.oAuthLogin(authorizationCode);

String redirectUrl = LOGIN_REDIRECT_URL + "#accessToken=" + jwtResponse.accessToken();
public ResponseEntity<Void> login(@RequestParam(value = "code") String authorizationCode) {
String redirectUrl = userService.oAuthLogin(authorizationCode);

return ResponseEntity
.status(HttpStatus.FOUND)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package kr.kro.photoliner.domain.user.service;

import kr.kro.photoliner.common.dto.response.JwtResponse;
import kr.kro.photoliner.domain.user.dto.response.UserInfoResponse;
import kr.kro.photoliner.domain.user.model.User;
import kr.kro.photoliner.domain.user.repository.UserRepository;
Expand All @@ -11,6 +10,7 @@
import kr.kro.photoliner.global.kakao.login.dto.response.KakaoProfileResponse;
import kr.kro.photoliner.global.kakao.login.service.KakaoAuthService;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

@Service
Expand All @@ -20,21 +20,28 @@ public class UserService {
private final KakaoAuthService kakaoAuthService;
private final JwtProvider jwtProvider;

@Value("${client.base-url}")
public String baseUrl;

private static final String LOGIN_REDIRECT_URL = "/login/kakao";

public UserInfoResponse getUserInfo(Long userId) {
User user = userRepository.findUserById(userId)
.orElseThrow(() -> CustomException.of(ApiResponseCode.NOT_FOUND_USER, "user id: " + userId));
return UserInfoResponse.from(user);
}

public JwtResponse oAuthLogin(String authorizationCode) {
public String oAuthLogin(String authorizationCode) {
KakaoOauthTokenResponse tokenResponse = kakaoAuthService.getTokenByAuthorizationCode(authorizationCode);
String accessToken = tokenResponse.accessToken();
KakaoProfileResponse profileResponse = kakaoAuthService.getKakaoUserProfile(accessToken);
String kakaoAccessToken = tokenResponse.accessToken();
KakaoProfileResponse profileResponse = kakaoAuthService.getKakaoUserProfile(kakaoAccessToken);

User user = userRepository.findUserByEmail(profileResponse.kakaoAccount().email())
.orElseGet(() -> signup(User.from(profileResponse)));

return new JwtResponse(jwtProvider.createAccessToken(user));
String accessToken = jwtProvider.createAccessToken(user);

return baseUrl + LOGIN_REDIRECT_URL + "#accessToken=" + accessToken;
}

private User signup(User user) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ public Object resolveArgument(
Objects.requireNonNull(authAt);

String token = jwtProvider.extractAccessToken(webRequest);
System.out.println("resolver: " + token);
jwtProvider.validateToken(token);
Long userId = jwtProvider.getUserId(token);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
@RestControllerAdvice
@Slf4j
public class GlobalExceptionHandler extends ResponseEntityExceptionHandler {

@ExceptionHandler(CustomException.class)
public ResponseEntity<Object> handlePhotoUploadException(
HttpServletRequest request,
Expand Down Expand Up @@ -63,6 +63,6 @@ private ResponseEntity<Object> buildErrorResponse(
);
return ResponseEntity
.status(response.status())
.body(request);
.body(response);
}
}
3 changes: 3 additions & 0 deletions src/main/resources/application-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,6 @@ jwt:
secret-key: ${SECRET_KEY}
access-token:
expiration-time: ${EXPIRATION_TIME}

client:
base-url: ${CLIENT_BASE_URL}
3 changes: 3 additions & 0 deletions src/main/resources/application-local-example.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,6 @@ jwt:
secret-key: secret key
access-token:
expiration-time: time

client:
base-url: base url
Loading