首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Firestore自动备份使用新的发布/订阅功能

Firestore自动备份使用新的发布/订阅功能
EN

Stack Overflow用户
提问于 2019-08-30 15:40:45
回答 1查看 414关注 0票数 1

因此,Firestore已经支持https://firebase.googleblog.com/2019/04/schedule-cloud-functions-firebase-cron.html几个月了

在计划数据导出的指南中,推荐的方法是通过App Engine:https://firebase.google.com/docs/firestore/solutions/schedule-export

我想知道是否有可能直接从预定的云函数中完成。如果是这样的话,下一步该怎么做?如何使用googleapis,特别是如何配置作用域,如何调用exportDocuments REST资源……

EN

回答 1

Stack Overflow用户

发布于 2019-08-30 18:29:19

我还没有构建这个函数,但到目前为止,我已经设法使用我用服务帐户密钥编写的脚本完成了它。

firestoreBackup.js

代码语言:javascript
运行
复制
import * as admin from 'firebase-admin';
import serviceAccount from './serviceAccounts/your-service-account-key.js';

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://your-app.firebaseio.com"
});

const client = new admin.firestore.v1.FirestoreAdminClient({});

async function doFirestoreBackup() {
  try {
    const response = await client.exportDocuments({
      name: client.databasePath('your-project-name','(default)'),
      outputUriPrefix: 'gs://your-project.appspot.com/firestore-backups/2019-08-25-T-12H00/'  // THIS IS YOUR BUCKET. YOU CAN CHOOSE THE FOLDER
    });
    console.log(response);
  }
  catch(err) {
    console.log(err.msg);
  }
}

doFirestoreBackup();

我使用babel-node来执行它:

代码语言:javascript
运行
复制
// TO RUN THE SCRIPT (NAVIGATE TO FOLDER)
C:\...\src\adminScripts\> npx babel-node firestoreBackup.js
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57722529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档