我使用 Firebase 作为我的 React Web 应用程序的数据库、身份验证和托管后端。我已经开始合并一些后端数据库处理的功能。这是自动化某些事情并编写更少代码的完美方法。我编写并部署了一些运行良好的函数。这样做的缺点是 Firebase 文档或互联网上并未真正讨论使用数据库触发器。因此,我发现自己必须编写几行函数,将其部署到我的 firebase 帐户,测试我的应用程序,并观察 firebase 函数网站是否有任何更改。这是相当痛苦的。我前几天发现了firebase functions:log这一点,这使它更容易忍受,但我真正寻找的是一种在本地运行我的应用程序并具有类似 console.log 的函数输出的方法。
设置package.json为通过 代理所有请求"proxy": "http://localhost:5000"。Run firebase emulators:start,它在端口 9001 上启动一个数据库模拟器,在端口 5000 上启动一个托管模拟器,在端口 5001 上启动一个函数模拟器。代理通过托管模拟器推送所有调用,但显然托管模拟器不会利用其他两个模拟器任何 console.log 输出。因此,当我通过 本地测试应用程序时,我只能看到 http 请求http://localhost:3000。
setupProxy.js按照 CRA 文档进行设置。为端口 5000 编写一个代理重定向/,并尝试为端口 5001 编写一个代理重定向/functions(这是对 url 路径的猜测)。运行firebase emulators:start。测试了应用程序http://localhost:3000以查看是否显示除 http 请求之外的任何内容,但没有。
firebase serve在端口 5000 …
firebase console.log reactjs firebase-tools google-cloud-functions