使用Firebase托管的Firebase云功能:firebase.json"重写"

时间:2017-10-30 09:30:31

标签: firebase google-cloud-functions firebase-hosting

我尝试使用云功能创建动态页面,但是当我在本地使用cli时,我从公共文件夹获取index.html页面。

我尝试部署功能,在firebase中托管,但问题仍然存在,我是从公共文件夹获取index.html页面

因此,对于iam尝试以下代码 - 我认为我必须错误"重写"一部分。

/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函数响应数据。

请有人帮忙!

1 个答案:

答案 0 :(得分:3)

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