Firebase에서 이미지를 저장하고 보는 방법은 무엇입니까?
답변
업데이트 (20160519) : Firebase가 Firebase Storage 라는 새로운 기능을 출시했습니다 . 이를 통해 이미지 및 기타 비 JSON 데이터를 전용 스토리지 서비스에 업로드 할 수 있습니다. 이미지를 JSON 데이터베이스에 base64로 인코딩 된 데이터로 저장하는 대신 이미지 저장에 사용하는 것이 좋습니다.
당신은 확실히 할 수 있습니다! 이미지 크기에 따라 몇 가지 옵션이 있습니다.
1. 작은 이미지 (10mb 미만)
https://github.com/firebase/firepano에이 를 수행하는 예제 프로젝트가 있습니다.
일반적인 접근 방식은 FileReader를 사용하여 파일을 로컬로로드하여 다른 데이터와 마찬가지로 Firebase에 파일을 저장할 수 있습니다. 이미지는 이진 파일이므로 base64로 인코딩 된 내용을 가져 와서 문자열로 저장할 수 있습니다. 또는 더 편리하게 데이터 로 저장할 수 있습니다 : url 다음 img 태그의 src로 들어갈 준비가되었습니다 (이것이 예입니다)!
2. 더 큰 이미지
Firebase에는 10mb (utf8로 인코딩 된 문자열 데이터) 제한이 있습니다. 이미지가 더 큰 경우 10MB 청크로 나누어야합니다. Firebase는 멀티 메가 바이트 문자열이 아니라 자주 변경되는 작은 문자열에 더 최적화되어 있습니다. 큰 정적 데이터가 많은 경우 S3 또는 CDN을 권장합니다.
답변
예, Firebase에서 이미지를 저장하고 볼 수 있습니다. 파일 선택기를 사용하여 이미지 파일을 가져올 수 있습니다. 그런 다음 원하는 이미지를 호스팅 할 수 있습니다 .Amazon s3을 선호합니다. 이미지가 호스팅되면 이미지에 대해 생성 된 URL을 사용하여 이미지를 표시 할 수 있습니다.
도움이 되었기를 바랍니다.
답변
이미지를 base64 형식으로 저장했습니다. firebase에서 다시 호출 할 때 base64 값에서 번역합니다.
답변
또한라는 서비스를 사용할 수 있습니다 Filepicker
자신의 서버와에 이미지를 저장 할 Filepicker 이미지에 URL을 제공합니다, 지금 Filestack라고합니다. URL을 Firebase에 저장할 수 있습니다.
답변
내가 Grendal2501이했던 방식을 처음으로 수행하는 몇 가지 방법이 있습니다. 그런 다음 user15163과 유사하게 이미지 URL을 firebase에 저장하고 이미지를 firebase 호스트 또는 Amazon S3에 호스팅 할 수 있습니다.
답변
JSON에서 Base64 문자열을 사용하는 것은 매우 무겁습니다. 파서는 많은 양의 리프팅을해야합니다. 현재 Fresco는 Base Support Base64 만 지원합니다. Amazon Cloud 또는 Firebase Cloud에 무언가를 넣는 것이 좋습니다. 그리고 이미지를 URL로 가져옵니다. 캐싱을 위해 Picasso 또는 Glide를 사용할 수 있습니다.