Загрузить с помощью JavaScript, используя Firebase Storage и Dropzone

Так что я провел много исследований и еще не нашел жизнеспособного решения для следующего … Я задал здесь более конкретный вопрос (Конкретный вопрос) но из-за отсутствия ответов или комментариев я решил задать более обобщенный вопрос, который может быть применим к большему количеству людей.

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

var myDropzone = new Dropzone(document.body, {
url: "/" // Not sure what to put here...
});

Где url: «» будет эквивалентно действию = «» в форме. Большинство примеров, которые вы можете найти, имеют url: «upload.php», однако я пытаюсь загрузить изображения в firebase. Есть ли способ запустить js для загрузки файла вместо php? возможно URL: «upload.js»? Это не сработает, а просто покажет, что я имею в виду. Или есть способ загрузить изображения в firebase с помощью php? Не совсем уверен, как действовать, но определенно мог бы помочь!

Вот что dropzone.js говорит об атрибуте URL, я просто не понимаю его полностью:

URL: Должен быть указан на элементах, отличных от формы (или когда
форма не имеет атрибута действия). Вы также можете предоставить
функция, которая будет вызываться с файлами и должна возвращать URL (так как
v3.12.0)

Заранее спасибо!

0

Решение

Вы не можете загрузить напрямую в Firebase Storage через какой-то специальный URL, который вы можете поместить в веб-форму. Но вы можете легко реализовать конечную точку с облачными функциями для Firebase с помощью небольшого дополнительного кода, который вы пишете, который выполняется на стороне сервера.

я имею короткая суть, которая дает весь код это делает это возможным.

Вы можете посмотреть код в действии в этом твите.

Я размещал свой веб-сайт через Firebase Hosting, но если вы этого не сделаете, вам может понадобиться настроить CORS или что-то еще, чтобы можно было вызывать со своей страницы функции Cloud Functions.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]