리그팀 이미지 업로드 시에 굳이 서버에 용량이 큰 이미지를 넘기지 않고, 버킷에 직접적으로 파일을 업로드할 수 있도록
클라이언트가 Presigned Url 요청
서버가 Presigned Url 부여
해당 Presigned Url 로 직접 클라가 접근하여 이미지 업로드
로 플로우를 생각했습니다.
Presigned Url 생성 시 UUID 를 이용해서 filePath 가 생성됩니다. 따라서 Presigned Url 은 다음과 같은 형태로 생성됩니다.
https://hufscheer-images.s3.ap-northeast-2.amazonaws.com/UUID 로 생성된 파일명?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20240709T163754Z&...
위의 url 에서 쿼리 파라미터 부분을 모두 제외하고 DB 에 저장하면 되므로 프론트에서는 presigned url 을 얻어 이미지를 업로드 한 뒤에 해당 url 을 리그팀 등록 시의 request 에 보내면 될 것이라고 생각했습니답
LeagueTeamServiceTest
LeagueTeamServiceTest 에서 실제로 객체가 등록되었는지 테스트하기 위해서 LeagueTeamRepository 에 findByLeagueAndName 메서드를 추가했습니다. 테스트를 위해서 레포지토리에 메서드를 추가하는 게 맞는지에 대한 확신이 서지 않습니다. 🤔 의견 주시면 감사하겠습니당
엔드포인트
/leagues/{leagueId}/teams 기존에 논의했던 엔드포인트 앞에 권한 검사를 위해 /manager 를 붙였습니다. 어떻게 생각하시는지 궁금해욥
🌍 이슈 번호
📝 구현 내용
🍀 확인해야 할 부분
S3 Presigned Url
리그팀 이미지 업로드 시에 굳이 서버에 용량이 큰 이미지를 넘기지 않고, 버킷에 직접적으로 파일을 업로드할 수 있도록
로 플로우를 생각했습니다.
Presigned Url 생성 시 UUID 를 이용해서 filePath 가 생성됩니다. 따라서 Presigned Url 은 다음과 같은 형태로 생성됩니다.
https://hufscheer-images.s3.ap-northeast-2.amazonaws.com/UUID 로 생성된 파일명?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20240709T163754Z&...
위의 url 에서 쿼리 파라미터 부분을 모두 제외하고 DB 에 저장하면 되므로 프론트에서는 presigned url 을 얻어 이미지를 업로드 한 뒤에 해당 url 을 리그팀 등록 시의 request 에 보내면 될 것이라고 생각했습니답
LeagueTeamServiceTest
LeagueTeamServiceTest 에서 실제로 객체가 등록되었는지 테스트하기 위해서 LeagueTeamRepository 에 findByLeagueAndName 메서드를 추가했습니다. 테스트를 위해서 레포지토리에 메서드를 추가하는 게 맞는지에 대한 확신이 서지 않습니다. 🤔 의견 주시면 감사하겠습니당
엔드포인트
/leagues/{leagueId}/teams 기존에 논의했던 엔드포인트 앞에 권한 검사를 위해 /manager 를 붙였습니다. 어떻게 생각하시는지 궁금해욥