인프런 커뮤니티 질문&답변

김용민님의 프로필 이미지

작성한 질문수

맛집 지도앱 만들기 (React Native + NestJS)

[10-12] AWS S3로 이미지 업로드하기

Presigned URL 방식

해결된 질문

24.08.18 16:23 작성

·

78

0

강사님이 알려주신 방식을 듣고 다양한 이미지 처리 방식을 공부하기 위하여 Presigned URL 방식을 구현중에 있습니다. Nest.js 백엔드에 요청을 통해 발급받은 S3 url 주소에 RN환경에서 PUT 요청으로 이미지를 업로드하고 있습니다.
이 떄, 일반적인 form-data 형식은 들어가지지 않는 것 같은데, binary 형태는 매우 잘 들어가집니다.
현업에서도 presigned-url을 활용할 떄 binary 형태로만 전달을 해야하나요, 아니면 다른 방식이 있는지 알고 싶어 식견을 구하고자, 질문드립니다!!

또, RN에서 Binary 형태를 만드는 방법이 쉽지 않아보여, 어떻게 하는게 좋은 방식인지 알고싶습니다!

답변 2

0

Hyungu Kang님의 프로필 이미지

2024. 08. 29. 23:49

object 형태로 넣으시면 됩니다.

await fetch(url, {
  method: 'PUT',
  headers: {'Content-Type': 'mime-type'},
  body: {
    uri: 'file:///local-uri',
    type: 'mime-type',
    name: 'file-name'
    size: 0
  }
});

0

Kyo님의 프로필 이미지
Kyo
지식공유자

2024. 08. 18. 21:05

들어가지않는다는게 어떻게 된다는 말씀이신가요? 잘들어가는 방법을 사용하면 안되는상황인가요?

이미지 방식은 현업이라고 정답이 있는것이 아니라 팀이나 회사마다 다를 수 있는 부분인것 같습니다.

김용민님의 프로필 이미지
김용민
질문자

2024. 08. 19. 04:08

Postman에서 Binary 형대로 PUT 요청으로 발급받은, url에 이미지를 업로드하면, 제대로 업로드가 됩니다. 하지만, FormData로 보낸경우, S3에 제대로 업로드 되지 않습니다.

Binary로 보내면 좋아보이는데, 클라이언트 환경이 React-Native인데, 해당 환경에서 보내기가 조금 어려운 구조 인 것 같아, S3에서 꼭 Binary 형태 이미지만, 업로드가 되는지 궁금해서 댓글을 남긴 것 입니다!!