【问题标题】:Upload with JavaScript using Firebase Storage and Dropzone使用 Firebase 存储和 Dropzone 使用 JavaScript 上传
【发布时间】:2018-07-13 12:41:08
【问题描述】:

我已经进行了大量研究,但尚未为以下问题找到可行的解决方案。我问了一个more specific question here),但由于缺乏答案或cmets,我决定问一个可能适用于更多人的更笼统的问题。

无论如何,dropzone.js 允许您使用 js 创建文件上传。下面是一个sn-p的代码:

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

其中 url: "" 相当于表单中的 action=""。您可以找到的大多数示例都有 url:"upload.php" 但是我正在尝试将图像上传到 firebase。有没有办法运行js而不是php来上传文件?也许网址:“upload.js”?那是行不通的,只是为了表明我的意思。或者有没有办法使用 PHP 将图像上传到 Firebase?我不太确定如何继续。

这是 dropzone.js 关于 URL 属性的说法,我只是不完全理解:

URL: 必须在表单以外的元素上指定(或者当 form 没有 action 属性)。您还可以提供一个 将与文件一起调用并且必须返回 url 的函数(因为 v3.12.0)

【问题讨论】:

    标签: javascript php firebase firebase-storage dropzone.js


    【解决方案1】:

    您不能通过一些可以放入网络表单的特殊 URL 直接上传到 Firebase 存储。但是您可以使用 Cloud Functions for Firebase 轻松实现端点,只需编写一些在服务器端运行的额外代码。

    我有 a short Gist that gives all the code 可以实现它。

    您可以观看运行中的代码in this tweet

    我通过 Firebase 托管托管了我的网站,但如果您不这样做,您可能需要设置 CORS 或其他东西才能从您的页面调用 Cloud Functions。

    【讨论】:

    • 实际上,您可以直接上传到 firebase,如下所示firebase.google.com/docs/storage/web/upload-files。我只是不知道如何用dropzone触发js,而url:“”应该是你的做法。如果您可以看一下,我只是在问题中添加了一张图片,但我不确定这意味着什么。
    • 仅供参考,习惯上直接将文本复制到问题中,而不是要求人们点击图像才能看到它。
    • 对不起,我是新手,没有将它们内联的声誉。 StackOverflow 告诉我,在声望达到 10 之前我无法做到这一点。有空我会更新的,抱歉!
    • 只需将文本复制到问题中即可。
    • 你是这个意思吗?请查看最近的编辑。
    猜你喜欢
    • 2020-09-28
    • 2019-04-18
    • 2017-01-11
    • 2017-05-26
    • 1970-01-01
    • 2020-03-28
    • 2019-04-13
    • 2020-08-28
    • 2020-11-21
    相关资源
    最近更新 更多