Firebase:如何获取不匹配图像的差异并从存储中删除图像

Posted

技术标签:

【中文标题】Firebase:如何获取不匹配图像的差异并从存储中删除图像【英文标题】:Firebase: how take a diff of mismatched images and delete the ones from Storage 【发布时间】:2018-12-20 19:28:01 【问题描述】:

我的 firebase 数据库使用名称:URL 和 UUID 保存图像并将其上传到存储...

如何使用 gsutil 或任何其他方法获取不匹配图像的差异并从存储中删除这些图像?如果你能给我一个例子,那真的很有帮助。

请找到架构的快照。

json schema

【问题讨论】:

您能否编辑您的问题以包含有关您使用的数据结构的更多信息?目前无法给出具体答案。单独gsutil 似乎也不足以实现这一目标。看看你已经尝试过的东西也会对帮助大有帮助。 @FrankvanPuffelen 我刚刚为模式添加了图像。另外,我到目前为止已经得到了商店中的图像列表,如下所示:gsutil ls gs://firebasestorage.url 【参考方案1】:

如果我理解正确,您想从 Cloud Storage 中删除在 Firebase 数据库中不再引用它们的图像。

这是一个 3 步过程:

    创建云存储上所有图像的列表。在 javascript 中以编程方式执行此操作的最简单方法是通过 Node.js SDK 或 HTTP JSON API。 通过其Node.js SDK,从数据库中创建所有图像 URL 的列表。 循环浏览来自 Cloud Storage 的文件列表。如果数据库中的 URL 列表中不存在文件的 URL,则该文件是孤立的,您可以将其删除。

【讨论】:

以上是关于Firebase:如何获取不匹配图像的差异并从存储中删除图像的主要内容,如果未能解决你的问题,请参考以下文章

如何从firebase函数中的firebase存储中获取图像的尺寸?

将图像上传到 Firebase 存储后如何获取图像 uri?

Firebase 存储:字符串与格式“base64”不匹配:发现无效字符

如何从输入字段将图像上传到 Firebase 云存储?

如何从 Firebase 存储中获取图像文件名?

如何从 Firebase 存储中获取调整大小的图片下载 URL