From a7beb3f9f0566c4f2190afd6722de1d39290e536 Mon Sep 17 00:00:00 2001 From: MinUk Date: Sun, 30 Jun 2024 14:55:36 +0900 Subject: [PATCH 1/5] =?UTF-8?q?Refactor=20:=20=EB=B6=88=ED=95=84=EC=9A=94?= =?UTF-8?q?=ED=95=9C=20SecurityFilterChain=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hongik/graduationproject/config/SecurityConfig.java | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java b/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java index 8eabdb7..83dacb7 100644 --- a/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java +++ b/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java @@ -19,14 +19,6 @@ public class SecurityConfig { private final JwtAuthenticationFilter jwtAuthenticationFilter; - @Bean - public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { - return http - .csrf(AbstractHttpConfigurer::disable) - .authorizeHttpRequests((authorizeRequests) -> authorizeRequests.anyRequest().permitAll()) - .build(); - } - @Bean protected SecurityFilterChain configure(HttpSecurity httpSecurity) throws Exception{ httpSecurity From 0a13832fdf001198d6431298bb75d3eec627d18e Mon Sep 17 00:00:00 2001 From: MinUk Date: Sun, 30 Jun 2024 17:44:16 +0900 Subject: [PATCH 2/5] =?UTF-8?q?Refactor=20:=20=EC=9C=A0=ED=9A=A8=ED=95=98?= =?UTF-8?q?=EC=A7=80=20=EC=95=8A=EC=9D=80=20jwt=EC=97=90=20=EB=8C=80?= =?UTF-8?q?=ED=95=9C=20=EC=9D=91=EB=8B=B5=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/SecurityConfig.java | 4 +- .../exception/ErrorCode.java | 8 +++- .../jwt/JwtExceptionFilter.java | 43 +++++++++++++++++++ .../graduationproject/jwt/TokenProvider.java | 2 +- 4 files changed, 53 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java diff --git a/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java b/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java index 83dacb7..2969dcc 100644 --- a/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java +++ b/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java @@ -1,6 +1,7 @@ package com.hongik.graduationproject.config; import com.hongik.graduationproject.jwt.JwtAuthenticationFilter; +import com.hongik.graduationproject.jwt.JwtExceptionFilter; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -25,6 +26,7 @@ protected SecurityFilterChain configure(HttpSecurity httpSecurity) throws Except .cors(Customizer.withDefaults()) .csrf(AbstractHttpConfigurer::disable) .httpBasic(AbstractHttpConfigurer::disable) + .formLogin(AbstractHttpConfigurer::disable) .sessionManagement((sessionManagement) -> sessionManagement.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) .authorizeHttpRequests((authorizeHttpRequests) -> @@ -35,7 +37,7 @@ protected SecurityFilterChain configure(HttpSecurity httpSecurity) throws Except .anyRequest().authenticated()); httpSecurity.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class); - + httpSecurity.addFilterBefore(new JwtExceptionFilter(), JwtAuthenticationFilter.class); return httpSecurity.build(); } } diff --git a/src/main/java/com/hongik/graduationproject/exception/ErrorCode.java b/src/main/java/com/hongik/graduationproject/exception/ErrorCode.java index 01ab09f..2d57750 100644 --- a/src/main/java/com/hongik/graduationproject/exception/ErrorCode.java +++ b/src/main/java/com/hongik/graduationproject/exception/ErrorCode.java @@ -7,6 +7,7 @@ @AllArgsConstructor @Getter public enum ErrorCode { + // 서비스 관련 에러 INVALID_VIDEO_URL(HttpStatus.BAD_REQUEST, "유효하지 않은 영상 URL입니다."), ALREADY_REQUESTED_SUMMARIZING(HttpStatus.BAD_REQUEST, "사용자가 이미 해당 영상을 요약 요청했습니다."), FAILED_TO_EXTRACT_EXTRACT_ID(HttpStatus.BAD_REQUEST, "영상의 고유 ID를 추출하는데 실패했습니다."), @@ -15,8 +16,11 @@ public enum ErrorCode { SUMMARIZING_STATUS_NOT_EXIST(HttpStatus.NOT_FOUND, "요약 정보를 찾을 수 없습니다."), CATEGORY_NOT_EXIST(HttpStatus.NOT_FOUND, "카테고리를 찾을 수 없습니다."), USER_ALREADY_EXISTS(HttpStatus.CONFLICT, "이미 가입한 사용자입니다."), - JWT_NOT_EXISTS(HttpStatus.BAD_REQUEST, "요청에 JWT가 존재하지 않습니다."), - INVALID_JWT(HttpStatus.BAD_REQUEST, "유효하지 않은 JWT입니다."); + + // JWT 관련 에러 + JWT_NOT_EXISTS(HttpStatus.UNAUTHORIZED, "요청에 JWT가 존재하지 않습니다."), + INVALID_JWT(HttpStatus.UNAUTHORIZED, "유효하지 않은 JWT입니다."), + JWT_EXPIRED(HttpStatus.UNAUTHORIZED, "JWT가 만료되었습니다."); private final HttpStatus httpStatus; private final String message; diff --git a/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java b/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java new file mode 100644 index 0000000..b853aae --- /dev/null +++ b/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java @@ -0,0 +1,43 @@ +package com.hongik.graduationproject.jwt; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.hongik.graduationproject.exception.AppException; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.AllArgsConstructor; +import org.springframework.http.MediaType; +import org.springframework.stereotype.Component; +import org.springframework.web.filter.OncePerRequestFilter; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +@Component +@AllArgsConstructor +public class JwtExceptionFilter extends OncePerRequestFilter { + + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { + try { + filterChain.doFilter(request, response); + } catch (AppException e) { + setErrorResponse(request, response, e); + } + } + + public void setErrorResponse(HttpServletRequest request, HttpServletResponse response, AppException ex) throws IOException { + final Map body = new HashMap<>(); + final ObjectMapper mapper = new ObjectMapper(); + + body.put("result", "error"); + body.put("message", ex.getErrorCode().getMessage()); + body.put("data", null); + + response.setContentType("application/json; charset=UTF-8"); + response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); + response.getWriter().write(mapper.writeValueAsString(body)); + } +} diff --git a/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java b/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java index 344c539..183b15d 100644 --- a/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java +++ b/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java @@ -43,7 +43,7 @@ public boolean validateToken(String token) { } try { Jwts.parser().setSigningKey(jwtSecretKey).parseClaimsJws(token).getBody(); - } catch (SignatureException | ExpiredJwtException e) { + } catch (SignatureException | ExpiredJwtException | MalformedJwtException e) { throw new AppException(ErrorCode.INVALID_JWT); } return true; From cc1039af9d3256f96044b682ffadb8314922b0c7 Mon Sep 17 00:00:00 2001 From: MinUk Date: Sun, 30 Jun 2024 22:00:31 +0900 Subject: [PATCH 3/5] =?UTF-8?q?Refactor=20:=20=ED=86=A0=ED=81=B0=20?= =?UTF-8?q?=EB=B0=9C=EA=B8=89=20=EB=A1=9C=EC=A7=81=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/SecurityConfig.java | 2 +- .../controller/AuthController.java | 14 +++--- .../domain/dto/auth/ImeiJoinResponse.java | 9 ---- ...ImeiJoinRequest.java => IssueRequest.java} | 2 +- .../domain/dto/auth/IssueTokenResponse.java | 6 +++ .../jwt/JwtAuthenticationFilter.java | 7 ++- .../jwt/JwtExceptionFilter.java | 3 ++ .../graduationproject/jwt/TokenProvider.java | 4 +- .../repository/UserRepository.java | 1 + .../service/auth/ImeiAuthService.java | 48 +++++++++---------- src/main/resources/application.yml | 3 -- 11 files changed, 49 insertions(+), 50 deletions(-) delete mode 100644 src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinResponse.java rename src/main/java/com/hongik/graduationproject/domain/dto/auth/{ImeiJoinRequest.java => IssueRequest.java} (72%) create mode 100644 src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueTokenResponse.java diff --git a/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java b/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java index 2969dcc..ffb7293 100644 --- a/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java +++ b/src/main/java/com/hongik/graduationproject/config/SecurityConfig.java @@ -34,7 +34,7 @@ protected SecurityFilterChain configure(HttpSecurity httpSecurity) throws Except .requestMatchers( "/api/auth/**").permitAll() .requestMatchers( "/v3/api-docs/**").permitAll() .requestMatchers( "/swagger-ui/**").permitAll() - .anyRequest().authenticated()); + .anyRequest().hasRole("USER")); httpSecurity.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class); httpSecurity.addFilterBefore(new JwtExceptionFilter(), JwtAuthenticationFilter.class); diff --git a/src/main/java/com/hongik/graduationproject/controller/AuthController.java b/src/main/java/com/hongik/graduationproject/controller/AuthController.java index ff8d8b0..22448b5 100644 --- a/src/main/java/com/hongik/graduationproject/controller/AuthController.java +++ b/src/main/java/com/hongik/graduationproject/controller/AuthController.java @@ -1,12 +1,10 @@ package com.hongik.graduationproject.controller; import com.hongik.graduationproject.domain.dto.Response; -import com.hongik.graduationproject.domain.dto.auth.ImeiJoinRequest; -import com.hongik.graduationproject.domain.dto.auth.ImeiJoinResponse; +import com.hongik.graduationproject.domain.dto.auth.IssueRequest; +import com.hongik.graduationproject.domain.dto.auth.IssueTokenResponse; import com.hongik.graduationproject.domain.dto.auth.ReissueRequest; import com.hongik.graduationproject.domain.dto.auth.ReissueResponse; -import com.hongik.graduationproject.domain.dto.video.VideoSummaryInitiateResponse; -import com.hongik.graduationproject.service.auth.AuthService; import com.hongik.graduationproject.service.auth.ImeiAuthService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Content; @@ -32,10 +30,10 @@ public Response reissueToken(@RequestBody ReissueRequest reiss } - @Operation(summary = "회원가입 요청", description = "imei를 사용한 회원가입을 위한 메소드") - @ApiResponse(content = @Content(schema = @Schema(implementation = ImeiJoinRequest.class))) + @Operation(summary = "토큰 발급 요청", description = "imei를 사용한 토큰 발급을 위한 메소드") + @ApiResponse(content = @Content(schema = @Schema(implementation = IssueTokenResponse.class))) @PostMapping("") - public Response joinUserWithImei(@RequestBody ImeiJoinRequest imeiJoinRequest) { - return Response.createSuccess(imeiAuthService.joinUserWithImei(imeiJoinRequest)); + public Response issueTokenByImei(@RequestBody IssueRequest issueRequest) { + return Response.createSuccess(imeiAuthService.issueTokenFromImei(issueRequest)); } } diff --git a/src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinResponse.java b/src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinResponse.java deleted file mode 100644 index 8a36069..0000000 --- a/src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinResponse.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.hongik.graduationproject.domain.dto.auth; - -import com.nimbusds.oauth2.sdk.token.RefreshToken; - -public record ImeiJoinResponse ( - String accessToken, - String refreshToken -) { -} diff --git a/src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinRequest.java b/src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueRequest.java similarity index 72% rename from src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinRequest.java rename to src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueRequest.java index 1e582fd..3812e22 100644 --- a/src/main/java/com/hongik/graduationproject/domain/dto/auth/ImeiJoinRequest.java +++ b/src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueRequest.java @@ -1,6 +1,6 @@ package com.hongik.graduationproject.domain.dto.auth; -public record ImeiJoinRequest( +public record IssueRequest( String imei ) { } diff --git a/src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueTokenResponse.java b/src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueTokenResponse.java new file mode 100644 index 0000000..e649fa6 --- /dev/null +++ b/src/main/java/com/hongik/graduationproject/domain/dto/auth/IssueTokenResponse.java @@ -0,0 +1,6 @@ +package com.hongik.graduationproject.domain.dto.auth; + +public record IssueTokenResponse( + String accessToken +) { +} diff --git a/src/main/java/com/hongik/graduationproject/jwt/JwtAuthenticationFilter.java b/src/main/java/com/hongik/graduationproject/jwt/JwtAuthenticationFilter.java index 77d3e30..8f9365c 100644 --- a/src/main/java/com/hongik/graduationproject/jwt/JwtAuthenticationFilter.java +++ b/src/main/java/com/hongik/graduationproject/jwt/JwtAuthenticationFilter.java @@ -6,11 +6,14 @@ import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Component; import org.springframework.web.filter.OncePerRequestFilter; import java.io.IOException; +import java.util.Collection; +import java.util.Collections; @Component @RequiredArgsConstructor @@ -30,8 +33,8 @@ protected void doFilterInternal(HttpServletRequest request, HttpServletResponse private void setAuthentication(String accessToken) { Long userId = tokenProvider.parseUserId(accessToken); - - UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(userId, ""); + UsernamePasswordAuthenticationToken authenticationToken = + new UsernamePasswordAuthenticationToken(userId, "", Collections.singletonList(new SimpleGrantedAuthority("ROLE_USER"))); SecurityContextHolder.getContext().setAuthentication(authenticationToken); } diff --git a/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java b/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java index b853aae..4007102 100644 --- a/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java +++ b/src/main/java/com/hongik/graduationproject/jwt/JwtExceptionFilter.java @@ -22,9 +22,11 @@ public class JwtExceptionFilter extends OncePerRequestFilter { @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { try { + System.out.println("필터 탐1 +++++++++++++++"); filterChain.doFilter(request, response); } catch (AppException e) { setErrorResponse(request, response, e); + System.out.println("필터 탐2 +++++++++++++++"); } } @@ -32,6 +34,7 @@ public void setErrorResponse(HttpServletRequest request, HttpServletResponse res final Map body = new HashMap<>(); final ObjectMapper mapper = new ObjectMapper(); + System.out.println(ex.getErrorCode().getMessage()); body.put("result", "error"); body.put("message", ex.getErrorCode().getMessage()); body.put("data", null); diff --git a/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java b/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java index 183b15d..1c15c67 100644 --- a/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java +++ b/src/main/java/com/hongik/graduationproject/jwt/TokenProvider.java @@ -43,8 +43,10 @@ public boolean validateToken(String token) { } try { Jwts.parser().setSigningKey(jwtSecretKey).parseClaimsJws(token).getBody(); - } catch (SignatureException | ExpiredJwtException | MalformedJwtException e) { + } catch (SignatureException | MalformedJwtException e) { throw new AppException(ErrorCode.INVALID_JWT); + } catch (ExpiredJwtException e ) { + throw new AppException(ErrorCode.JWT_EXPIRED); } return true; } diff --git a/src/main/java/com/hongik/graduationproject/repository/UserRepository.java b/src/main/java/com/hongik/graduationproject/repository/UserRepository.java index c91cea1..3830de6 100644 --- a/src/main/java/com/hongik/graduationproject/repository/UserRepository.java +++ b/src/main/java/com/hongik/graduationproject/repository/UserRepository.java @@ -11,5 +11,6 @@ public interface UserRepository extends JpaRepository { public User findByKakaoId(Long kakaoId); Optional findById(Long id); Optional findByEmail(String email); + Optional findByImei(String imei); boolean existsByImei(String imei); } \ No newline at end of file diff --git a/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java b/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java index 553e97a..ba93914 100644 --- a/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java +++ b/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java @@ -1,14 +1,12 @@ package com.hongik.graduationproject.service.auth; -import com.hongik.graduationproject.domain.dto.auth.ImeiJoinRequest; -import com.hongik.graduationproject.domain.dto.auth.ImeiJoinResponse; +import com.hongik.graduationproject.domain.dto.auth.IssueRequest; +import com.hongik.graduationproject.domain.dto.auth.IssueTokenResponse; import com.hongik.graduationproject.domain.dto.auth.ReissueRequest; import com.hongik.graduationproject.domain.dto.auth.ReissueResponse; import com.hongik.graduationproject.domain.entity.Category; import com.hongik.graduationproject.domain.entity.User; import com.hongik.graduationproject.enums.MainCategory; -import com.hongik.graduationproject.exception.AppException; -import com.hongik.graduationproject.exception.ErrorCode; import com.hongik.graduationproject.jwt.TokenProvider; import com.hongik.graduationproject.repository.CategoryRepository; import com.hongik.graduationproject.repository.UserRepository; @@ -28,19 +26,27 @@ public class ImeiAuthService { private final CategoryRepository categoryRepository; private final TokenProvider tokenProvider; - public ImeiJoinResponse joinUserWithImei(ImeiJoinRequest imeiJoinRequest) { - checkDuplicateUser(imeiJoinRequest); + public IssueTokenResponse issueTokenFromImei(IssueRequest issueRequest) { + User user; + if (!userRepository.existsByImei(issueRequest.imei())) { + user = createUser(issueRequest); + } else { + user = userRepository.findByImei(issueRequest.imei()).get(); + } - User savedUser = userRepository.save(User.builder() - .imei(imeiJoinRequest.imei()) - .build()); + String accessToken = tokenProvider.createAccessToken(user.getId()); - createCategories(savedUser); + return new IssueTokenResponse(accessToken); + } - String accessToken = tokenProvider.createAccessToken(savedUser.getId()); - String refreshToken = tokenProvider.createRefreshToken(savedUser.getId()); + private User createUser(IssueRequest issueRequest) { + User user; + user = userRepository.save(User.builder() + .imei(issueRequest.imei()) + .build()); - return new ImeiJoinResponse(accessToken, refreshToken); + createCategories(user); + return user; } public ReissueResponse reissueToken(ReissueRequest reissueRequest) { @@ -58,19 +64,11 @@ private void createCategories(User savedUser) { List categoryList = new ArrayList<>(); for (MainCategory mainCategory : MainCategory.values()) { categoryList.add(Category.builder() - .user(savedUser) - .mainCategory(mainCategory) - .subCategory("기타") - .build()); + .user(savedUser) + .mainCategory(mainCategory) + .subCategory("기타") + .build()); } categoryRepository.saveAll(categoryList); } - - private void checkDuplicateUser(ImeiJoinRequest imeiJoinRequest) { - if (userRepository.existsByImei(imeiJoinRequest.imei())) { - throw new AppException(ErrorCode.USER_ALREADY_EXISTS); - } - } - - } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 8fe2aa8..b2bbd62 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -4,13 +4,10 @@ server: jwt: secret: ${JWT_SECRET_KEY} -# # 5시간 -# access-token-time: 2592000000 # 10일 access-token-time: 864000000 # 30일 refresh-token-time: 2592000000 -# RabbitMQ ?? ?? spring: rabbitmq: From 7b1dd07b122205dff64620c5ce2a76e6ce3e98cc Mon Sep 17 00:00:00 2001 From: MinUk Date: Sun, 30 Jun 2024 22:01:15 +0900 Subject: [PATCH 4/5] =?UTF-8?q?Refactor=20:=20=EB=B6=88=ED=95=84=EC=9A=94?= =?UTF-8?q?=ED=95=9C=20=EB=A9=94=EC=86=8C=EB=93=9C=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../graduationproject/controller/AuthController.java | 8 -------- .../controller/VideoSummaryController.java | 4 ---- .../service/auth/ImeiAuthService.java | 12 ------------ 3 files changed, 24 deletions(-) diff --git a/src/main/java/com/hongik/graduationproject/controller/AuthController.java b/src/main/java/com/hongik/graduationproject/controller/AuthController.java index 22448b5..45e11cd 100644 --- a/src/main/java/com/hongik/graduationproject/controller/AuthController.java +++ b/src/main/java/com/hongik/graduationproject/controller/AuthController.java @@ -22,14 +22,6 @@ public class AuthController { private final ImeiAuthService imeiAuthService; - @Operation(summary = "reissue 요청", description = "reissue를 위한 메소드") - @ApiResponse(content = @Content(schema = @Schema(implementation = ReissueRequest.class))) - @PostMapping("/reissue") - public Response reissueToken(@RequestBody ReissueRequest reissueRequest) { - return Response.createSuccess(imeiAuthService.reissueToken(reissueRequest)); - } - - @Operation(summary = "토큰 발급 요청", description = "imei를 사용한 토큰 발급을 위한 메소드") @ApiResponse(content = @Content(schema = @Schema(implementation = IssueTokenResponse.class))) @PostMapping("") diff --git a/src/main/java/com/hongik/graduationproject/controller/VideoSummaryController.java b/src/main/java/com/hongik/graduationproject/controller/VideoSummaryController.java index b3bb9c5..945e304 100644 --- a/src/main/java/com/hongik/graduationproject/controller/VideoSummaryController.java +++ b/src/main/java/com/hongik/graduationproject/controller/VideoSummaryController.java @@ -70,8 +70,4 @@ public Response getAllSummariesByCategoryId(@Parameter return Response.createSuccess(videoSummaryService.getAllSummariesByCategoryId(categoryId)); } - @GetMapping("/hi") - public Response hi() { - return Response.createSuccess("hi"); - } } diff --git a/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java b/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java index ba93914..fcc238e 100644 --- a/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java +++ b/src/main/java/com/hongik/graduationproject/service/auth/ImeiAuthService.java @@ -21,7 +21,6 @@ @RequiredArgsConstructor @Slf4j public class ImeiAuthService { - private final UserRepository userRepository; private final CategoryRepository categoryRepository; private final TokenProvider tokenProvider; @@ -49,17 +48,6 @@ private User createUser(IssueRequest issueRequest) { return user; } - public ReissueResponse reissueToken(ReissueRequest reissueRequest) { - Long userId = tokenProvider.parseUserId(reissueRequest.getAccessToken()); - - tokenProvider.validateToken(reissueRequest.getRefreshToken()); - - String newAccessToken = tokenProvider.createAccessToken(userId); - String newRefreshToken = tokenProvider.createRefreshToken(userId); - - return new ReissueResponse(newAccessToken, newRefreshToken); - } - private void createCategories(User savedUser) { List categoryList = new ArrayList<>(); for (MainCategory mainCategory : MainCategory.values()) { From 510bf2c5a1ee819cf4cb0400495492d8e6781028 Mon Sep 17 00:00:00 2001 From: MinUk Date: Sun, 30 Jun 2024 22:04:30 +0900 Subject: [PATCH 5/5] =?UTF-8?q?Refactor=20:=20=EC=A3=BC=EC=84=9D=20?= =?UTF-8?q?=ED=95=A8=EC=88=98=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hongik/graduationproject/service/VideoSummaryService.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/main/java/com/hongik/graduationproject/service/VideoSummaryService.java b/src/main/java/com/hongik/graduationproject/service/VideoSummaryService.java index a3a8908..ebe5301 100644 --- a/src/main/java/com/hongik/graduationproject/service/VideoSummaryService.java +++ b/src/main/java/com/hongik/graduationproject/service/VideoSummaryService.java @@ -70,8 +70,6 @@ private boolean checkDuplicateSummarizing(String videoCode, Long userId) { public VideoSummaryDto getVideoSummaryById(Long videoSummaryId) { VideoSummary videoSummary = videoSummaryRepository.getReferenceById(videoSummaryId); VideoSummaryCategory videoSummaryCategory = videoSummaryCategoryRepository.findByVideoSummary(videoSummary); -// VideoSummary videoSummary = - //videoSummaryRepository.findById(videoSummaryId).orElseThrow(() -> new AppException(ErrorCode.VIDEO_SUMMARY_NOT_FOUND)); return VideoSummaryDto.from(videoSummaryCategory); } @@ -84,7 +82,6 @@ public VideoSummaryStatusResponse getStatus(String videoCode, Long userId) { if (statusCache.getStatus().equals(COMPLETE.name())) { Category category = categoryRepository.findDefaultCategoryByUserIdAndMainCategory(userId, statusCache.getGeneratedMainCategory()) .orElseThrow(() -> new AppException(ErrorCode.CATEGORY_NOT_EXIST)); -// Category category = categoryRepository.findDefaultCategoryByUserIdAndMainCategory(1L, statusCache.getGeneratedMainCategory()) VideoSummary videoSummary = videoSummaryRepository.getReferenceById(statusCache.getVideoSummaryId()); videoSummaryCategoryRepository.save(VideoSummaryCategory.builder()