Как автоматически удалить файл хранилища firebase с помощью облачных функций через 7 дней

#firebase #google-cloud-functions #google-cloud-storage

#firebase #google-cloud-функции #google-облачное хранилище

Вопрос:

Я создаю приложение для Android, в котором пользователь может загружать изображения в определенной категории. Он будет сохранен в firestore вместе с коллекцией категорий с описанием изображения и путем к изображению хранилища firebase. Я хочу автоматически удалить фотографию, которой 7 дней, используя облачную функцию. Я не хочу привлекать клиентское устройство для запуска функции.

Ответ №1:

В конечном итоге вы напишете для этого много кода. Полное обсуждение выходит за рамки ответа на Stack Overflow. Общая процедура выглядит следующим образом:

  • Напишите триггер хранилища, который срабатывает, когда пользователь загружает файл.
  • В этом триггере используйте облачные задачи, чтобы запланировать вызов функции HTTPS с использованием ее URL-адреса, отложенный через 7 дней. Задача должна быть настроена на доставку полезной нагрузки функции, которая сообщает ей, какой файл нужно удалить.
  • В триггере HTTPS получите полезную нагрузку и удалите файл из хранилища.

Это будет похоже на существующий подробный шаблон для присвоения документу Firestore TTL, за исключением того, что вы используете файл хранилища вместо документа Firestore.