当前位置: 首页 > 知识库问答 >
问题:

Firebase存储管理SDK:从图像Blob上传

林鸿飞
2023-03-14

在firebase storage的web sdk中,您可以从Blob数据上载图像。我有一个nodeJS应用程序,想将blob数据中的图像上传到我的存储桶中。在文档中,如果运行节点服务器环境,建议使用AdminSDK。但我在firbase存储管理文档中找不到此功能。

这是我的密码:

const admin = require('firebase-admin');
const serviceAccount = require(`./credentials/my-keyfile.json`);
const app = admin.initializeApp({ 
  credential: admin.credential.cert(serviceAccount) 
});
const storage = app.storage();

// Get Blob data from an external ImageUrl
const axios = require("axios");
const getBlobFromUrl = (url) => {
  const response = await axios.get(url, { responseType: "blob" });
  return response.data;
}

const blobData = getBlobFromUrl("https://images.unsplash.com/photo-1591476315349-faa1c8e6f567?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=1080&fit=max")
// MY QUESTION -> how can i upload that blob data to my storage?

共有1个答案

蔚楷
2023-03-14

您在上载带有Blob数据的图像时发布的第一个链接包含有关如何使用客户端sdk执行此操作的信息。

当您使用AdminSDK时,用例是针对后端的,例如,云功能。您在帖子中展示的内容用于此用例。

有关如何使用客户端sdk上传图像的实现,请查看一些快速入门指南以及代码实验室。

如果您主要使用Blob,您可以查看一些库,如busboy,然后发送HTTP请求。

 类似资料:
  • 我正在开发一款用于拍照的Android应用程序。首先,用户拍摄个人资料图片。此图像的Url保存在Firebase实时数据库中。用于检索以下下载URL的示例代码 这个url被保存在数据库中的多个地方,我需要在那里加载用户的个人资料图片——他的每个帖子的条目,他给应用程序上其他人的消息,等等。 现在,如果他以后更改个人资料图片,我有以下两个选项 更新每个数据库条目-非常繁琐、暴力和资源密集 那么,有没

  • 我要上传一张图片到firebase的存储器。我用的不是网页版存储(不应该用)。我正在使用firebase admin。没问题,我毫无困难地上传了文件,并在变量“file”中得到结果。 如果我访问firebase存储控制台,图像就在那里。好吧 现在,我有一些问题。 > < li> 为什么对< code>upload ()方法的响应有这么多信息和这么多对象?回顾这个巨大的对象,我在元数据中发现了一个名

  • Firebase Admin SDK文档清楚地说明,服务帐户对存储帐户具有完全的范围控制,但由于传输令牌源为nil,因此正确引导凭据似乎有些错误。

  • 我有一个问题与我的代码,我必须上传图像到Firebase存储,我需要的图像来自画廊和相机,从画廊的图像是好的,但来自相机的图像给问题,图像加载在ImageView和被发送到数据库是黑色的。有人知道如何解决这个问题吗,或者你知道任何其他加载图像的方法吗? 来自画廊 从相机

  • 我在SQLite数据库中有一个图像作为BLOB类型,我想将该图像上传到firebase存储中,获取图像的下载URL和尺寸,并将它们添加到Firebase实时数据库中。我已使用 bucket.upload 从本地驱动器成功上传了图像,但我不知道如何上传 blob。 我在服务器端(NodeJS)使用admin-sdk,有一个“上传”功能,但那是在客户端sdk中。

  • 我试图从我的移动混合应用程序(离子3)发送一张图片到我的Heroku后端(Node.js),并让后端将图片上传到Firebase存储,并将新上传的fil下载url返回到移动应用程序。 上载成功,但当我转到Firebase存储控制台时,当我试图显示图片的预览时出现错误,下载时无法从计算机打开它。我想这是一个编码的东西...? 如何检索新上传的文件下载url?我希望在中返回一个对象,就像在函数中一样,