Untitled

  1. <user→ 프론트> : 사용자가 프로필로 등록할 이미지 파일을 업로드함
  2. <프론트 → 백> : 이미지 업로드에 대한 일시적인 권한을 가지고 있는 url (presigned url) 을 발급 요청을 함 [ filename 을 넘겨줌 ]
  3. <백 → s3 >: 저장할 고유 이름 생성 및 고유 이름을 통한 저장하기 위한 presigned url 메타 정보를 생성하고 s3 에 presigned url 에 생성 요청 [이 행동은 accesskey를 통한 고유 권한으로 이루어짐]
  4. <s3 → 백> : presigned url 발급
  5. <백 → 프론트> : presigned url 발급
  6. <프론트 → s3 >: presigned url 로 파일 업로드
  7. <s3 → 프론트 >: 업로드 성공 여부와 영구적인 파일 조회를 위한 URL 을 발급함(presigned url 과 다름)
  8. <프론트 → 백 >: 영구적인 조회 가능한 URL 을 해당 유저의 프로필 이미지 URL 로 등록하고자 하는 요청을 보냄
  9. <백 → DB >: URL 유효성 검사한 후 해당 유저의 프로필 이미지 URL 로 등록