1

使用功能时在本地执行/触发 Firebase 功能的正确方法是什么?firebase-toolsfirebase serve

假设您具有以下功能:

exports.hello = functions.https.onRequest((req, res) => {
  res.send('Hello World');
});

如果通常会hello通过对以下内容进行 HTTP POST 调用来触发生产功能https://us-central1-foobar.cloudfunctions.net/hello

curl -X POST -H "Content-Type:application/json" https://us-central1-foobar.cloudfunctions.net/hello

firebase serve在本地使用时如何构造 HTTP POST url ?目标是在 Firebase 托管 + 功能解决方案中启动生产之前调试/测试功能。

将一个目标localhost:5000而不是https://us-central1-foobar

感谢您提供任何帮助。

4

1 回答 1

2

正如https://firebase.google.com/docs/functions/local-emulator上的文档所说:

此命令会输出一个 URL,您可以在其中查看或测试 Firebase 托管内容和 HTTP 功能。

因此,当您启动本地模拟器时,它会打印该函数的 URL。就我而言:

$ firebase serve --only functions

=== Serving from '/Users/puf/Github/zero-to-app-io-2017'...

i  functions: Preparing to emulate HTTPS functions. Support for other event types coming soon.
✔  functions: cleanupMojaic: http://localhost:5002/z2a-emojichat/us-central1/cleanupMojaic
于 2017-06-23T02:39:39.557 回答