带有 Firebase 托管的 Firebase 云函数:firebase.json "rewrites"

Firebase Cloud Functions with Firebase Hosting : firebase.json "rewrites"

我正在尝试使用云功能创建一个动态页面,但是当我在本地使用 cli 服务时,我正在从 public 文件夹中获取 index.html 页面。

我尝试部署功能,在 firebase 中托管,但问题仍然存在,我是从 public 文件夹

获取 index.html 页面吗

所以我正在尝试以下代码 - 我想我一定是 "rewrites" 部分错了。

/functions/index.js

const functions = require('firebase-functions');

exports.bigben = functions.https.onRequest((req, res) => {
  const hours = (new Date().getHours() % 12) + 1 // london is UTC + 1hr;
  res.status(200).send(`<!doctype html>
    <head>
      <title>Time</title>
    </head>
    <body>
      ${'BONG '.repeat(hours)}
    </body>
  </html>`);
});

firebase.json

{
  "hosting": {
    "public": "public",

    // Add the following rewrites section *within* "hosting"
   "rewrites": [ {
      "source": "/", "function": "bigben"
    } ]

  }
}

我想做的是当我们点击 https://example.firebaseapp.com/ 时,我们必须获取 bigben 函数响应数据。

请有人伸出援手!

出于性能原因,Firebase 托管始终更喜欢静态内容的完全匹配而不是重写。从 public 目录中删除 index.html,您的重写应该开始工作。