有人知道是否有一种方法可以使用 https 地址而不是默认的 http 来初始化 Firebase 函数(使用模拟器在本地调试)? 我正在尝试调试与 Telegram 机器人相关的脚本,而 Telegram 只允许 https webhooks。
Shell 输出如下:
PS C:\Users\<user>\Desktop\tmp_node\functions> firebase emulators:start --only functions
i emulators: Starting emulators: functions
+ hub: emulator hub started at http://localhost:4400
+ functions: Using node@10 from host.
+ functions: functions emulator started at http://localhost:8443
i functions: Watching "C:\Users\<user>\Desktop\tmp_node\functions" for Cloud Functions...
+ functions[<function name>]: http function initialized (http://localhost:8443/<endpoint>).
+ emulators: All emulators started, it is now safe to connect.
我需要它在 https://localhost:8443/ 上启动。
提前非常感谢您!
就像 @bermick 在评论中提到的那样,ngrok 是解决这个问题的好方法,直到 Firebase 人员为我们提供了一种在本地模拟器上启用 https 的方法。步骤如下:
./ngrok authtoken [[your_token]]
(位于 https://dashboard.ngrok.com/get-started/setup 的当前页面将包含包括令牌在内的整个命令这样您就可以将其复制并粘贴到控制台中)。./ngrok http 5001
Forwarding https://xxxxxxxxx.ngrok.io -> http://localhost:5001
https://xxxxxxxxx.ngrok.io/my-project/us-central1/cloudFunctionName
答案是google在模拟器中实现了https,如果你同意就点赞