Получение общедоступного пути с помощью KnpGaufretteBundle с адаптером GoogleCloudStorage

После настройки KnpGaufretteBundle с адаптером GoogleCloudStorage я могу записывать файлы в Google Cloud Storage.

Но я понятия не имею, как получить ссылку общего доступа к этому файлу (в данном случае к изображению).

Вот пример кода, который я использую для написания, если он в любом случае актуален. На самом деле у меня есть версии:

$fs = $this->get("knp_gaufrette.filesystem_map")->get("bucket_name");
$fs->write("image.jpg",file_get_contents("/path/to/file"));

or

$file = new \Gaufrette\File("image.jpg",$this->get("knp_gaufrette.filesystem_map")->get("bucket_name"));
$file->setContent(file_get_contents("/path/to/file"));

Любые идеи о том, как получить общедоступный («http://..») URL-адрес отсюда?

Спасибо!


person Vlad Dogarescu    schedule 06.11.2018    source источник


Ответы (2)


Взгляните на Gaufrette Extra (gaufrette extra). Вы сможете легко реализовать это, скопировав то, как это делается для Amazon S3.

person Vincent    schedule 06.11.2018

Наконец-то я смог программно получить URL-адрес.

Сначала мне пришлось сделать корзину общедоступной: https://cloud.google.com/storage/docs/access-control/making-data-public

Затем я получил URL-адрес после этого сообщения:

Получить общедоступный URL-адрес для файла - Google Cloud Storage - Сервер приложений (Python)

person Vlad Dogarescu    schedule 07.11.2018