繁体   English   中英

如何从云存储中获取在某个时间创建的 Firebase 的文件?

[英]how to get files from Cloud Storage for Firebase that created at a certain time?

在此处输入图像描述

我需要删除云存储中eventPoster文件夹中上次修改元数据超过 6 个月前的图像。

所以我想使用 Cloud Function 进行 cron 作业,并且我需要“查询”上次修改时间超过 6 个月的文件

如何使用管理员 SDK 做到这一点?

我想我找到了解决方案

根据这个答案,没有办法通过元数据查询

所以,至于现在我使用下面的代码来获取过时的文件

import * as admin from "firebase-admin";
import * as moment from "moment";

const app = admin.initializeApp(); // I am using Google Cloud Function, much more simple to initialize the app
const bucket = app.storage().bucket();

const response = await bucket.getFiles({prefix: "eventPoster/"}); // set your folder name in prefix here
const files = response[0];

const sixMonthAgo = moment().subtract(6, "months").toDate();
const outOfDateFiles = files.filter((file) => {
    const createdTime = new Date(file.metadata.timeCreated);
    return moment(createdTime).isBefore(sixMonthAgo);
});

console.log(`number of outdated files: ${outOfDateFiles.length}`);

阅读此处的文档以进一步阅读

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM