如何从使用存储图像调整大小扩展调整大小的图像中获取下载网址?


  • 我可以从原始上传的文件下载网址
  • 我无法从图像调整大小扩展创建的文件中下载 url。
//making a ref beforehand
const ref = db.collection("impressions").doc().id;
//upload the original file
const bucket = await firebase.storage().ref("impressions/" + ref).put(image);
//this works but I do not need it
const downloadUrl = await firebase.storage().ref("impressions/" + ref).getDownloadURL();
//trying to retrieve the downloadUrl from the files that are most likely still in the process of being created by the image resize extention?
//the ref's are correct
const downloadUrl_image = await firebase.storage().ref("impressions/" + ref + "_1000x1000").getDownloadURL();
const downloadUrl_thumb = await firebase.storage().ref("impressions/" + ref + "_50x50").getDownloadURL();

如何从调整大小的图像中获取下载网址?有我可以听的活动吗?还是我需要制作自己的功能?

谢谢你的帮助,

马蒂亚斯

Firebase 扩展非常棒,因为它们允许您快速部署标准业务逻辑,但它们可能在配置选项方面受到限制。

特别是,您将无法立即获得调整大小的图像的下载 URL。

我可以想到两种可能的方法:

1. 在创建调整大小的图像时触发云函数

在扩展配置期间,您可以定义存储调整大小的图像的路径。

帮助说:

例如,如果您指定路径thumbs并上传 图像到/images/original.jpg,则调整大小的图像存储在/images/thumbs/original_200x200.jpg.

因此,您预先知道路径的结构和调整大小的图像的名称。因此,您可以在创建这些文件时触发云函数,请参阅文档。例如,您可以将图像的下载 URL 存储在 Firestore 文档中,其 ID 与调整大小的图像文件名(或原始文件名(相同

2.编写自己的图像大小调整云功能

官方云函数示例集合中有一个示例,其功能与扩展完全相同。你可以在Github上找到它。您还可以查看扩展本身的代码。

这样,您就可以完全控制云函数逻辑。

相关内容

  • 没有找到相关文章

最新更新