From 08ee906b73d3b9d46d6b2fd0bdb7999e6d083205 Mon Sep 17 00:00:00 2001 From: aram-su Date: Tue, 12 Nov 2024 17:16:24 +0900 Subject: [PATCH] =?UTF-8?q?NB-193=20:=20!HOTFIX=20-=20=ED=94=84=EB=A1=9C?= =?UTF-8?q?=ED=95=84=20=EC=9D=B4=EB=AF=B8=EC=A7=80=20=EA=B2=BD=EB=A1=9C=20?= =?UTF-8?q?=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 프로필 이미지의 S3 업로드와 CDN URL 변환 과정에서 발생하는 경로 처리 오류를 수정함 문제 상황: - 업로드 경로의 시작이 "/"로 시작하지 않으면 CDN URL 변환 실패 - 업로드 경로가 "/"로 시작하면 S3 버킷의 기존 구조와 불일치 해결 방법: - S3 업로드 시점에는 "/"를 제외하여 기존 경로 구조 유지 - CDN URL 변환 시에만 "/" 추가하도록 로직 수정 --- src/main/java/com/soyeon/nubim/domain/user/UserService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/soyeon/nubim/domain/user/UserService.java b/src/main/java/com/soyeon/nubim/domain/user/UserService.java index e8eb9c1..3314ce3 100644 --- a/src/main/java/com/soyeon/nubim/domain/user/UserService.java +++ b/src/main/java/com/soyeon/nubim/domain/user/UserService.java @@ -136,7 +136,7 @@ public User findUserByIdOrThrow(Long userId) { public ProfileImageUpdateResponse updateProfileImage(MultipartFile profileImage) { validateProfileImageContentType(profileImage.getContentType()); - String uploadPath = "/users/" + loggedInUserService.getCurrentUserId() + "/profile/" + UUID.randomUUID() + String uploadPath = "users/" + loggedInUserService.getCurrentUserId() + "/profile/" + UUID.randomUUID() .toString() .substring(0, 4); String uploadResponse = s3ImageUploader.uploadImage(uploadPath, profileImage); @@ -144,7 +144,7 @@ public ProfileImageUpdateResponse updateProfileImage(MultipartFile profileImage) if (uploadResponse.contains("fail")) { return new ProfileImageUpdateResponse("profile image update fail", null); } - String cdnUrl = s3AndCdnUrlConverter.convertPathToCdnUrl(uploadPath); + String cdnUrl = s3AndCdnUrlConverter.convertPathToCdnUrl("/"+uploadPath); userRepository.updateProfileImage(cdnUrl, loggedInUserService.getCurrentUserId()); return new ProfileImageUpdateResponse("profile image update success", uploadResponse); }