使用 getDownloadURL() 从 firebase 存储加载图像不起作用

Posted

技术标签:

【中文标题】使用 getDownloadURL() 从 firebase 存储加载图像不起作用【英文标题】:Loading an image with getDownloadURL() from firebase storage do not work 【发布时间】:2019-05-29 15:33:29 【问题描述】:

似乎 getDownloadURL() 不起作用并出现错误。

我使用 nuxtjs 并想在浏览器上显示图像。图片是手动上传到 Firebase 存储的。

我试过了

npm install xmlhttprequest

因为错误与 xmlhttprequest 相关。

但没有改变任何东西。我也认为我是否真的应该安装 xmlhttprequest ......因为这似乎是人们在 nuxt 或 vue 上不使用的东西?我在其他部分使用 firebase realtime db,使用 axios 可以正常工作。

这是我的代码。

var storageRef = firebase.storage.ref("/animals/cat.png");
storageRef.getDownloadURL().then(function(url) 
  console.log(url); 
);

我在终端上收到此错误。

node_modules/@firebase/storage/dist/index.cjs.js:672
        this.xhr_ = new XMLHttpRequest();
                    ^
ReferenceError: XMLHttpRequest is not defined

【问题讨论】:

【参考方案1】:

您似乎正在尝试在服务器上使用 Cloud Storage for Firebase 客户端库。它仅适用于浏览器环境。浏览器提供了一个原生的 XMLHttpRequest 对象,这就是客户端库所假设的。安装节点模块 xmlhttprequest 不会简单地提供一个自动导入 Firease SDK 自己的模块的实现。

【讨论】:

我想知道为什么很难找到从 Firebase 存储中获取图像路径的方法。这对我来说听起来像是一件基本的事情。也许我遗漏了一些明显的东西?

以上是关于使用 getDownloadURL() 从 firebase 存储加载图像不起作用的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Firebase 存储 getDownloadURL 获取 URL

如何从 getDownloadURL() 获取 url

Flutter Firebase 存储期货问题

如何在最新版本中使用 getdownloadurl?

如何在最新版本中使用 getdownloadurl?

如何在最新版本中使用 getdownloadurl?