如何禁用 Firebase 存储模拟器?

问题描述

当我启动模拟器时,Storage 模拟器启动并在 localhost:9199 上可用。
然后我使用 node.js 中的管理 SDK 访问存储:

serviceAccountKey = require('./serviceAccountKey.json');
const config = {
  credential: admin.credential.cert(serviceAccountKey),};
const adminApp = admin.initializeApp(config);
const storage = adminApp.storage();

现在存储指向模拟器,而不是模拟器实现之前的真实服务。
如何获得真正的服务?
我已尝试按照 here 所述设置 projectId 和 env 变量,但它不起作用。

解决方法

运行 firebase emulators:start 将在模拟状态下启动所有服务。如果您想与生产服务对话,您可以运行 firebase serve 如果您想模拟某些服务而不是存储,您可以运行 firebase serve --only {services,to,emulate}(例如,{{ 1}}。这将模拟函数和托管,但任何对存储(或身份验证或其他非模拟服务)的调用都将与实时 Firebase 环境通信。

,

好的,所以方法只是从命令行启动所有服务,但storage,而不是从firebase.json,这样:

firebase emulators:start --only hosting,functions,firestore,auth,ui

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...