Как получить публичный доступ к файлам или изображениям из Podio API, если у меня есть ID изображения или File Object - PullRequest
0 голосов
/ 14 октября 2019

Я создал приложение на Podio . Элементы прикреплены к этому конкретному приложению. В пунктах есть возможность загрузить изображение. Теперь я прошел аутентификацию с идентификатором приложения и маркером приложения из Podio PHP API . Я получаю объект файла и беру ссылку на миниатюру. Ссылка на миниатюру работает в браузере, где я уже вошел в Podio. Но это не работает на частном окне. Он перенаправляет меня на страницу входа.

Итак, мой вопрос: как я могу получить публичный доступ к ссылке с миниатюрами?

Ответы [ 2 ]

0 голосов
/ 01 ноября 2019

Вы можете получить «публичный URL» для файла, хранящегося в поле изображения, используя Globiflow (теперь он доступен с премиум-планом). Я предполагаю, что это добавляет некоторый прокси-слой для личных файлов. Таким образом, вы можете добавить специальное поле для хранения этого общедоступного URL, установить / обновить значение этого поля с помощью рабочего процесса Globiflow и использовать этот URL для общедоступных страниц.

Не нашел общедоступной документации для этого, но значение "Общедоступный URL" в настоящее время доступно для полей изображения, я специально проверил.

0 голосов
/ 22 октября 2019

Краткий ответ: вы не можете.

Длинный ответ: когда Podio размещает файл, он проверяет, есть ли у вас права на его просмотр. Поэтому, если вы вошли в систему и просматриваете URL-адрес через браузер, он покажет, в противном случае - нет.

Вам необходимо скопировать изображение в общедоступное место. Например, на вашем веб-сервере:

$file = PodioFile::get($file_id);
$raw = $file->get_raw();
file_put_contents("/var/www/html/image_path/".$file->name, $raw);

Тогда вы можете просмотреть файл: http://my_domain.com/image_path/image_name.png

...