모두가 같은 상황에서 저같은 고생을 하지 않길 바라며…
지금 저는 카이스트 몰입캠프에 와있습니다.. 여기서 다양한 프로젝트들을 개발하던 중 이미지를 업로드하는 일을 하게 되었고..
뭐랄까 이런건 다 백에서 처리할 줄 알아서..(선입견?) 좀 고생하면서 구현하게 되었습니다..
이미지 업로드는 프론트에서 하는게 훨씬 효율적이다! 라는 것입니다..
물론 백엔드에서도 multer, fileInterceptor 등으로 이미지를 받는 로직들을 구축할 수 있지만.. 그리고 저도 처음엔 그렇게 했지만.. 현업에서는 절대 쓰이지 않는 방식이라고 하네요..ㅜ
제가 시도한 방식들을 먼저 생각해보면..
그냥 백엔드 서버에 이미지를 저장해보자! > 가장 단순, but 한계가 명확함.. cloud 로 방향을 틀기로 했다..
백엔드에서 이미지를 업로드 하고 url을 db에 저장..
이걸 딱 구현하고 나서는 이게 정답인줄 알았는데 이상하게 느리기도 하고 음.. 뭔가 아닌 것 같아서 도움을 요청함.. >> 조재건 코어님께서 말씀하시길

라고 하셔서 프론트에서 이미지를 올리고 presigned url을 활용하기로 함..
백엔드에서는 url만 반환해주는 api 딱 하나 구현하고 프론트에서 이미지를 올리는 방식으로 진행하기로 함


작동 방식은 이렇게 됩니다..
이미지 업로드 해야지!
프론트에서 백에서 구현된 aws presigned url 요청하는 api 불러온다.
프론트에서는 그 url로 이미지를 올린다.