Есть ли способ отправить файл через httpsCallable в функциях firebase? - PullRequest
0 голосов
/ 08 мая 2020

Когда пользователь загружает изображение и нажимает кнопку «Отправить» в форме на внешнем интерфейсе (javascript), я хочу, чтобы сработал this.functions.httpsCallable('uploadImage'). Однако я не уверен, как отправить файл через httpsCallable.

Путь выполнения должен быть таким:

  • Пользователь выбирает локальный файл и нажимает отправить .
  • При отправке вызывается this.functions.httpsCallable('uploadImage')({imageFile}).
  • Функция получает изображение и отправляет обратно соответствующий ответ.
  • Интерфейс печатает ответ пользователю.

Если поможет, я использую React с Gatsby для внешнего интерфейса.

1 Ответ

0 голосов
/ 08 мая 2020

Поскольку вызываемые функции могут отправлять только JSON данные туда и обратно, вам придется преобразовать файл во что-то совместимое с JSON. JSON не может содержать произвольные двоичные данные, поэтому вам придется (например) base64 кодировать данные файла для хранения в виде строкового свойства в JSON.

...