使用 0.0.0.0 主机时 Firebase 模拟器速度缓慢

Wil*_*ill 5 macos networking firebase-tools google-cloud-firestore

我\xe2\x80\x99m 在使用 Apple Silicon(M1 芯片)的 Mac Mini 上设置 Firebase 模拟器时遇到问题。

\n

我发送到 Firestore(使用模拟器)的每个请求都需要很长时间才能完成(有时它永远不会完成,并且我收到网络错误,指出无法到达后端\xe2\x80\x99t):

\n
\n

@firebase/firestore:Firestore (8.2.5):无法到达 Cloud Firestore 后端。后端在 10 秒内未响应。\n这通常表明您的设备当前没有正常的 Internet 连接。客户端将以离线模式运行,直到能够成功连接到后端。

\n
\n

事实证明这种情况发生是因为我在文件中设置host了。如果我删除主机字段或将其设置为,那么我不会遇到任何问题。0.0.0.0firebase.jsonlocalhost

\n

这是我的firebase.json文件:

\n
{\n  "firestore": {\n    "rules": "./firestore.rules"\n  },\n  "emulators": {\n    "firestore": {\n      "host": "0.0.0.0",\n      "port": 8080\n    }\n  }\n}\n\n
Run Code Online (Sandbox Code Playgroud)\n

我将其设置为的原因0.0.0.0是因为我需要在不同的计算机(即平板电脑)上测试我的应用程序,而我们设法使其工作的唯一方法是将主机设置为,0.0.0.0因为该主机将解析所有地址与我们的机器相关。这样,我就可以使用我的本地 IP 地址(即192.168.0.1)访问模拟器。

\n

我注意到这个问题只发生在配备 M1 Apple Silicon 芯片的新 Mac 上。所以我想知道这是否与M1解析IP地址的方式有关。

\n

有任何想法吗?

\n

Wil*_*ill 4

我仍然不确定这是否是 M1 特定的,因为我无法在另一台 M1 机器上测试它,但在localhost文件中添加我的计算机名称hosts似乎已经解决了这个问题:

127.0.0.1    localhost Will.local
::1          localhost Will.local
Run Code Online (Sandbox Code Playgroud)