【问题标题】:Firebase. How to execute function AND load webpage (hosting) with a URL火力基地。如何使用 URL 执行功能并加载网页(托管)
【发布时间】:2020-09-29 05:34:36
【问题描述】:

我需要执行 Firebase 函数并使用单个 URL 加载页面。

例如 URL = "localhost:5000/cars?make=hyundai&model=elantra"

  1. 此 URL 将加载 views/cars/index.html 网页。
  2. 此 URL 还将调用 loadCar() Firebase 函数。

...我怎样才能实现这两个目标?(或者有更好的方法来实现这一点 - 加载页面并调用函数)


当前行为:它加载页面(实现 1),但不调用 loadCar() 函数(未实现 2)。

仅供参考我的 firebase.json

{
"hosting": {
    "public": "functions/views",
    "rewrites": [
        {
            "source": "/cars/**",
            "function": "loadCar"
        }
    ]
}

我的文件目录(箭头指向相关文件):

loadCar():

exports.loadCar= functions.https.onRequest((req, res) => {
    // const requestedCar = Get requested car info from URL queries.
    // Save requestedCar to Firestore DB, so it can be loaded in the html view.
    // ... etc.
    res.end();
});

【问题讨论】:

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


    【解决方案1】:

    如果您询问单个 Firebase 托管 URL 是否可以同时加载静态内容和触发功能,那是不可能的。它必须是其中之一,而不是两者。

    您可以改为让静态内容中的一些 JavaScript 代码通过另一个 URL 调用该函数。或者,除了执行其他工作之外,您还可以让 URL 调用该函数,该函数返回要显示的 HTML。但是请求的 URL 的目的地只能去静态内容或函数,不能两者兼而有之。

    【讨论】:

    • TY Firebase 先生。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 2016-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-19
    • 2010-11-05
    相关资源
    最近更新 更多