Firebase云功能中不能包含嵌套路由

时间:2019-02-03 02:56:19

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

我正在尝试实现Firebase托管重写。这是我的firebase.json

{
  "functions": {},
  "hosting": {
    "public": "public",
    "rewrites": [
      {
        "source": "/users",
        "function": "usersMicroservice"
      }
    ],
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ]
  }
}

我的functions / index.js文件如下所示

const functions = require("firebase-functions");
const express = require("express");

const app = express();

app.get("/users", (req, res) => res.json({message: "hello world"}));
app.get("/users/next", (req, res) => res.json({message: "hello world 2"})));


exports.usersMicroservice = functions.https.onRequest(app);

我在本地运行我的服务器。日志中出现两个URL。他们是

http://localhost:5001/test-development/us-central1/usersMicroservice

http://localhost:5000

第一个URL是我的云函数的直接路径,而第二个URL是我的“托管” URL。当我做一个请求到云功能一切正常。但是,当我向http://localhost:5000/users/1发出GET请求时,收到404页面未找到消息,但是当我向http://localhost:5000/users发出GET请求时,得到了预期的json响应。

我是新来的火力点托管和云功能。不知道我可能做错了什么。任何帮助是极大的赞赏。

1 个答案:

答案 0 :(得分:0)

尝试一下:

uname -sr