【问题标题】:How can I access to functions after firebase servefirebase 服务后如何访问功能
【发布时间】:2020-12-07 15:18:24
【问题描述】:

我正在使用 firebase 在我的机器上进行测试。 在firebase serve之后 我只能使用 HTTP 访问函数: http://localhost:5001/project/us-central1/endpoint

但是,当我尝试获取参数时。

export const basicHTTP = functions.https.onRequest((req, res) => {
  const name = req.params.name
  res.send(`Hi, good! ${name}`)
})

我无法检索任何参数。我想我必须以 https 访问我的本地主机。

但我的本地环境不提供通过 SSL 访问的方式。 我该如何处理?

【问题讨论】:

    标签: node.js firebase ssl google-cloud-functions firebase-tools


    【解决方案1】:

    模拟器使 HTTPS 云功能在本地主机上的 HTTPS HTTP 上都可用。因此,您可以通过代码在 HTTP 上调用它。

    来自connecting to HTTPS functions in the emulator上的文档:

    您的代码中的每个 HTTPS 函数都将使用以下 URL 格式从本地模拟器提供:

    http://$HOST:$PORT/$PROJECT/$REGION/$NAME
    

    例如,具有默认主机端口和区域的简单 helloWorld 函数将在以下位置提供服务:

    https://localhost:5001/$PROJECT/us-central1/helloWorld
    

    【讨论】:

    • 感谢您的快速响应和帮助。但是我之前从官方文档中找到了描述。所以,http://localhost:5001/project_id/us-central1/basicHTTP 这对我有用。但是当我更改为 https https://localhost:5001/project_id/us-central1/basicHTTP Chrome 浏览器拒绝访问时出现错误。此站点无法提供安全连接 localhost 发送了无效响应。 ERR_SSL_PROTOCOL_ERROR
    • 本地主机出现此错误是因为通常在本地主机上我们没有安装 SSL 证书。如果您使用的是 Chrome,您可以在错误页面的高级选项中允许主机。
    猜你喜欢
    • 2020-03-24
    • 1970-01-01
    • 2014-04-04
    • 2022-07-27
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    • 2019-04-16
    • 1970-01-01
    相关资源
    最近更新 更多