我最近将firebase功能引入了我的一个项目。每当我要测试更改时,用于部署功能的反馈循环就会扼杀我的工作流程。
我注意到我可以使用firebase serve --only functions
在本地运行函数。我已经在我的主项目,干净项目中尝试过此操作,甚至通过克隆function-samples存储库并在此文件夹https://github.com/firebase/functions-samples/tree/Node-8/quickstarts/big-ben中运行firebase serve --only functions
来进行了尝试。
在所有情况下,控制台都会为其在我的functions文件夹中找到的每个功能输出一个URL。每个链接如下所示:http://localhost:5000/functions-demo-3e1a4/us-central1/app
。
但是当我尝试打那条路线时,它只会返回404。始终有与该路线相关的有效functions.https.onRequest
导出,因此在启动时肯定可以正确解释代码。但是似乎当我尝试使用它时,它不再能够找到路线。
我尝试更改为不同的节点版本(8.10、6.17、11.2),每次我清除要测试的项目的functions
文件夹中的node_modules文件夹,然后再次安装之前。当我尝试使用路由时,它总是以404结尾。
简而言之:firebase serve --only functions
似乎在启动时正确解释了功能,但是所有路由都解析为404。
答案 0 :(得分:0)
啊哈!事实证明,我在端口Range(strcat('E17')
(默认端口)上运行了其他命令。当我运行5000
时,它没有给出错误,因此我认为该端口很好。
当我在其他端口firebase serve --only functions
上运行它时,它可以工作-我可以点击函数路由并获得正确的结果。