fetchAlbumItems로 받은 영상을 서버에 업로드하는 방법

이 글의 성격은 무엇인가요?

질문 / 문제 해결

내용을 설명해주세요

안녕하세요. fetchAlbumItems 로 이미지와 영상을 받아 서버에 업로드 하고, 반환된 공개 URL을 저장해 다른 사용자에게 보여주려고 합니다.

하지만 사진과 다르게 영상은 로컬 파일 경로를 반환합니다.

fetchAlbumItems({ types: ['PHOTO', 'VIDEO'], base64: true }) 호출 시,

  • 사진은 dataUri가 base64 문자열로 와서 업로드가 정상 동작합니다. ex) "dataUrl": "9j/4AAQSk..."
  • 영상은 dataUri가 로컬 파일 경로 로 옵니다. 서버에 올리려면 이 파일의 바이트를 읽어야 하는데, 파일 접근이 막혀 읽을 수가 없습니다.
    ex. (file:///private/var/mobile/Containers/Data/Application/...)

감사합니다.

안녕하세요 :slight_smile:
웹뷰로 개발중이실까요 ?

네 웹뷰 맞습니다!

요거 한번 확인해보겠습니다!
웹뷰에서 웹 표준 api 사용을 막고 있지 않아서,
비디오 업로드가 필요하다면 Web 표준 File API(<input type="file" accept="video/*">)를 사용해 File 객체를 받은 뒤 FormData로 서버에 업로드하실 수 있을 것 같습니다.

감사합니다~~!