Firebase Local Emulator Suite详解
创作时间:
作者:
@小白创作中心
Firebase Local Emulator Suite详解
引用
CSDN
1.
https://blog.csdn.net/yikezhuixun/article/details/139326637
Firebase Local Emulator Suite 是一组本地服务,可以模拟 Firebase 平台的在线服务,帮助开发者在本地环境中开发和测试应用程序,而不必依赖实时的 Firebase 项目。以下是关于 Firebase Local Emulator Suite 的详细介绍及其使用方法。
Firebase Local Emulator Suite 组件
- Authentication Emulator:模拟 Firebase Authentication,用于测试用户身份验证。
- Firestore Emulator:模拟 Cloud Firestore 数据库。
- Realtime Database Emulator:模拟 Firebase Realtime Database。
- Storage Emulator:模拟 Firebase Storage。
- Hosting Emulator:模拟 Firebase Hosting 环境。
- Functions Emulator:模拟 Cloud Functions for Firebase。
- Pub/Sub Emulator:模拟 Google Cloud Pub/Sub。
安装和使用步骤
1. 安装 Firebase CLI
首先确保安装了 Firebase CLI。如果尚未安装,请运行以下命令:
npm install -g firebase-tools
2. 初始化 Firebase 项目
在项目根目录下运行以下命令:
firebase init
选择要初始化的 Firebase 功能,并确保选择 “Emulators” 以启用本地模拟器。
3. 配置模拟器
在初始化过程中,选择你要使用的模拟器,例如 Firestore、Functions 等。初始化完成后,Firebase 会生成一个 firebase.json
配置文件,其中包含模拟器的配置。
4. 启动模拟器
在项目根目录下运行以下命令以启动所有配置的模拟器:
firebase emulators:start
你将看到类似如下的输出:
✔ All emulators ready! It is now safe to connect your app.
┌────────────────┬────────────────────────────────┐
│ Emulator │ Host:Port │
├────────────────┼────────────────────────────────┤
│ Authentication │ localhost:9099 │
│ Firestore │ localhost:8080 │
│ Functions │ localhost:5001 │
│ Hosting │ localhost:5000 │
│ Pub/Sub │ localhost:8085 │
│ Storage │ localhost:9199 │
└────────────────┴────────────────────────────────┘
┌────────────────┬────────────────────────────────┐
│ View Emulator │ http://localhost:4000 │
└────────────────┴────────────────────────────────┘
这些是本地模拟器的地址和端口,可以在浏览器中打开 http://localhost:4000
查看模拟器套件的控制面板。
5. 配置应用程序使用本地模拟器
你需要将你的应用程序配置为使用本地模拟器。例如,使用 Firebase SDK 时,可以如下配置 Firestore 和 Authentication:
import firebase from 'firebase/app';
import 'firebase/firestore';
import 'firebase/auth';
// 初始化 Firebase
const firebaseConfig = {
apiKey: "YOUR_API_KEY",
authDomain: "YOUR_PROJECT_ID.firebaseapp.com",
projectId: "YOUR_PROJECT_ID",
storageBucket: "YOUR_PROJECT_ID.appspot.com",
messagingSenderId: "YOUR_MESSAGING_SENDER_ID",
appId: "YOUR_APP_ID"
};
firebase.initializeApp(firebaseConfig);
// 使用本地模拟器
if (window.location.hostname === 'localhost') {
firebase.firestore().useEmulator('localhost', 8080);
firebase.auth().useEmulator('http://localhost:9099');
}
常见用途
- 开发和测试:在本地开发和测试 Firebase 应用程序,无需每次更改都部署到云端。
- 集成测试:使用本地模拟器进行端到端集成测试,确保所有组件正常工作。
- 离线开发:即使没有网络连接,也能继续开发和测试应用程序。
热门推荐
MoSCoW优先排序法则:项目管理中的需求优先级指南
如何通过旁路由实现内容过滤
刘德华内地巡演即将开启,8城联动引爆歌迷期待
ETF降费潮来袭!高度依赖指数ETF基金的华泰柏瑞何以自处?
长沙到南京:四种交通方式大比拼,总有一种适合你
私人银行客户标准是什么?
装修期间楼道粉尘污染问题:如何有效控制与预防
室颤心电图特点
繁简之争:为什么手机芯片都是 ARM
LPL新赛季观看指南:全局BP彻底疯狂,12日开战,全年仅一个冠军
沉浸式手工艺短视频激发非遗传播活力 ——以山白的短视频为例
AI续写经典神话 微短剧《美猴王》再绘文艺新样态
STTT:王福俤/闵军霞/吴钰祥团队绘制铁死亡进展与慢病防治全景图
美术的基本知识
一文理清!ESG和可持续发展到底有什么异同?
INFJ:精神家园与人格特质及表现
实车测试的目的和作用
《天国:拯救2》沉浸式体验,玩家:从被虐到偷遍全村的逆袭之路
头发保养10种方法
揭秘人贩子常用套路,如何预防拐卖儿童事件发生
肚子左下腹长期有胀气硬块怎么回事
糖尿病患者,应注意避开这些饮食误区
CPU渲染和GPU渲染各自特点,优势,场景使用
白敬亭:三平台四部破万剧,凭什么能脱颖而出?
全面解析软件测试缺陷类型:你知道这些常见的缺陷吗?
研究证实:姜黄素可显著改善风湿性关节炎和银屑病性关节炎症状
率先布局DeepSeek本地化应用 深圳大学附属华南医院大力推进AI医院建设
虚拟产品不给退款违法吗
科学家惊爆:人类意识竟源于另一维度
左肋骨疼痛位置在哪里