首页 > 解决方案 > 初始化firebase模拟器存储

问题描述

有没有办法使用firebase存储模拟器进行本地开发?

我发现这些天应该可以使用我猜的firebase-tools,但我不知道如何将它包含在我的代码中。

这是我的本地主机的 Firebase 配置

import firebase from "firebase/app"
import "firebase/auth"
import "firebase/firestore"
import "firebase/functions"
import "firebase/storage"
import "firebase/database"

 firebase.initializeApp({
   apiKey: "-------------------",
   authDomain: "http://localhost:9099",
   databaseURL: "http://localhost:9000?ns=project-name",
   projectId: "project-name",
   storageBucket: "default-bucket",
   messagingSenderId: "--------------",
   appId: "----------------------",
   measurementId: "-----------------",
})

firebase.firestore().settings({ host: "localhost:8080", ssl: false })
firebase.auth().useEmulator("http://localhost:9099")
firebase.functions().useEmulator("http://localhost5001")
firebase.database().useEmulator("http://localhost:9090")

现在,当我试图在存储桶中存储一些东西时,这个 url 被执行:

https://firebasestorage.googleapis.com/v0/b/default-bucket/o?name=test-file.csv

据我了解,该应用程序没有获得任何本地存储域,而只有 Firebase 云存储域

标签: javascriptreact-nativefirebase-storagefirebase-tools

解决方案


如果您使用的是 web sdk v8,您可以将其添加到您的代码中,如下所示:

var storage = firebase.storage();
storage.useEmulator("localhost", 9199); 

这在此处的文档中进行了概述:https ://firebase.google.com/docs/emulator-suite/connect_storage#web-v8

firebase emulators:start确保在终端中运行命令时存储模拟器正在运行


推荐阅读