#javascript #openstack #object-storage
#язык JavaScript #openstack #объект-хранилище
Вопрос:
Я пытаюсь создать службы загрузки/загрузки файлов для своего веб-сайта, и я пытаюсь использовать хранилище объектов из openstack. Дело в том, что у меня нет проблем с этим с помощью php и openstack php sdk, но когда я пытаюсь сделать это с помощью некоторого javascript, я не могу найти хороший sdk или методы. Я не использую node, у меня есть php-сервер и клиент javascript. Я хотел бы загружать или скачивать файлы непосредственно из клиента javascript. Я не хочу, чтобы файл передавался через php-сервер. Мне удалось создать токены openstack с помощью php sdk, может быть, я мог бы отправить их в javascript, чтобы они могли пройти аутентификацию? Прошла неделя поисков без каких-либо решений…
Ответ №1:
В Openstack есть плагин S3, который может облегчить вам поиск библиотеки/sdk.
В противном случае вам следует создать временный URL-адрес на стороне сервера, я уверен, что в вашей библиотеке PHP есть инструменты для этого. Затем URL-адрес можно использовать на стороне клиента для РАЗМЕЩЕНИЯ файла.
Временный URL-адрес подделан таким образом, чтобы открыть временный доступ только для записи для загрузки. Существует также такой же URL-адрес для открытия доступа только для чтения к некоторым элементам.
Таким образом, либо клиент запрашивает место для загрузки на PHP, который отправляет обратно URL-адрес, либо просто попросите клиента загрузить файл на ваш PHP, который подделает ссылку, а затем перенаправит запрос на URL-адрес.
Комментарии:
1. Я нашел решение. Я использовал библиотеку php для создания токена openstack, с помощью которого затем подделал html-запрос put, и он отлично сработал. Я не знал о плагине S3, я тоже займусь этим, спасибо!