我对 Node.js 的经验不是很丰富,但是快速学习对 javaScript 都很好。我正在使用 Cloud Functions 为项目创建 API,并尝试使用自定义域来访问此 API。在我的 Firebase 托管上,我连接了一个子域“api.mydomain.com”。
我使用 express 在我的函数 index.js 上有一个名为“api”的函数:
let express = require('express');
let app = express();
app.post('/endpoint/:userId', (req, res) => {
... EXECUTE CODE
res.json(json);
});
exports.api = functions.https.onRequest(app);
Run Code Online (Sandbox Code Playgroud)
在我的 firebase.json 中,我进行了重写:
"rewrites": [
{
"source": "/api/**",
"function": "api"
}
Run Code Online (Sandbox Code Playgroud)
所以理论上,如果我向https://api.mydomain/api/endpoint/userID发出 POST 请求应该执行该函数,但我得到:
无法 POST /api/endpoint/userID/
如果我使用默认的 firebase URL 访问像https://us-central1-my-proyect.cloudfunctions.net/api这样的函数,它工作正常。
您知道如何正确配置自定义域以使用我的功能吗?
非常感谢您的帮助!