Как удалить изображение с помощью облачных функций с помощью URL-адреса загрузки? - PullRequest
0 голосов
/ 18 апреля 2019

Я хочу удалить изображение. Все, что у меня есть, это URL-адрес загрузки. Во флаттере я могу получить путь к файлу из URL-адреса загрузки и использовать этот путь для удаления файла в облачном хранилище.

Можно ли получить путь к файлу из URL-адреса загрузки и использовать этот путь для удаления изображения из облачных функций?

или существует какой-либо лучший / более быстрый способ / более эффективный способ удаления изображения из облачного хранилища только с помощью URL-адреса загрузки

1 Ответ

0 голосов
/ 18 апреля 2019

URL-адрес объекта облачного хранилища Google состоит из следующих частей:

https://storage.cloud.google.com/[bucket_name]/[path/and/the/object/name*]?[autentication_if_needed]

* Путь в облачном хранилище является «виртуальным», фактически он является неотъемлемой частью имени / идентификации объекта. Cloud Console и gsutil имитируют папки для вывода пользовательского интерфейса.

Существует несколько методов для удаления объекта :

  1. из облачной консоли
  2. Использование команды Cloud SDK: gsutil rm gs: // [BUCKET_NAME] / [OBJECT_NAME]
  3. Использование клиентских библиотек, например, с python:
 def delete_blob(bucket_name, blob_name):
        """Deletes a blob from the bucket."""
        storage_client = storage.Client()
        bucket = storage_client.get_bucket(bucket_name)
        blob = bucket.blob(blob_name)
        blob.delete()
        print('Blob {} deleted.'.format(blob_name))`

Имейте в виду, что для удаления объекта для учетной записи пользователя / службы, используемой для выполнения операции, необходимы надлежащие разрешения .

...