Есть ли способ изменить подписанный URL-адрес хранилища Google, чтобы он не включал имя файла? - PullRequest
0 голосов
/ 26 января 2020

У меня есть метод, который получает подписанный URL-адрес большого двоичного объекта в корзине Google, а затем возвращает его пользователям. В идеале, я мог бы также изменить имя показанного файла. Возможно ли это?

Пример:

https://storage.googleapis.com/<bucket>/<path to file.mp4>?Expires=1580050133&GoogleAccessId=<access-id>&Signature=<signature>

Часть, которую я хотел бы установить, - <path to file.mp4>.

1 Ответ

0 голосов
/ 29 января 2020

Единственное, о чем я могу думать, это иметь что-то посередине, которое будет отвечать за имя «swap».

Например, Google App Engine с триггером http или облачная функция с триггером хранения, который всякий раз, когда вам нужно, чтобы он извлек объект, переименовал его и либо предоставил его непосредственно пользователю, либо сохранил его с новым именем в другом контейнере.

Помните, что вещи, которые вы хотите временно сохранить в GAE или Cloud Функции должны храниться в каталоге "/ tmp".

Затем для переименования, если вы используете GAE, возможно, вы можете использовать что-то вроде:

import os os.system ([YOUR_SHELL_COMMAND])

Однако самый простой, но более затратный подход - установить функцию с триггером хранения, который при каждой загрузке объекта будет сохранять его копию с нужным новым именем в другом контейнере, который вы будете использовать для пользователи.

...