javascript - Firebase:如何处理传递给 firebase.initializeApp() 的无效 firebaseConfig
问题描述
我有一个连接到 2 个 firebase 项目的 Angular 应用程序:
默认项目通过
AngularFireModule.initializeApp(environment.firebaseConfig)
(AngularFire2)在应用程序加载时连接辅助项目在运行时通过
firebase.initializeApp(firebaseConfig, 'pr1');
(Firebase JS SDK)连接
现在,第二个项目的 firebase 配置是通过 UI 从用户那里接收到的。因此,我需要先验证是否存在具有给定凭据的 firebase 项目,然后才能执行任何操作。
res = firebase.initializeApp(firebaseConfig, 'pr1');
使用无效的 apiKey、authDomain、projectId、storageBucket 等调用,并没有抛出任何错误,而是成功返回了一个对象FirebaseAppImpl
。
初始化后调用
- res.auth()
- res.storage()
也不会抛出任何错误,而是返回正确的对象。
仅对于res.database()
,我收到如下控制台警告:
@firebase/database: FIREBASE WARNING: Firebase error. Please ensure that you spelled the name of your Firebase correctly (https://[invalid-url].firebaseio.com)
但它没有抛出任何错误,我可以采取行动。
我需要验证给定的键,并提醒用户 1 个或多个键是错误的。关于如何做到这一点的任何建议?
更新 1:查看了 Firebase 管理 API:https ://firebase.google.com/docs/projects/api/reference/rest
- 它具有许多功能,例如创建、检索项目。
- 但我不确定如何根据我的要求使用这些 API。
解决方案
推荐阅读
- gradle - Liquibase gradle 插件似乎在 IntelliJ 中不起作用
- python - 在 Python 和 STREMLIT 中从 GITHUB 加载 JSON 数据
- python - Python中的密码程序
- c++ - 如何在 C++ 中通过指针传递字符串?
- python - 我们如何使用均值滤波器作为自适应滤波器?
- azure - 具有自定义身份验证和授权的 Azure 存储保护
- python - 如何在单击时从两个不同的列表框中选择项目
- pyspark - 如何根据列中数组的第一个值过滤 pyspark 数据帧?
- mongodb - 为什么在 ECS 环境下 Mongo Docker 官方镜像无法读取 /docker-entrypoint-initdb.d?
- macos - 是否可以为桌面 Mac 添加 Mac Outlook 自定义插件