Firebase 函数 return 404
Firebase functions return 404
我正在尝试为 Firebase 函数设置自定义域。
自定义域已经过验证并且可以正常工作。
我的 firebase 在 us-central1
:
下运行 运行
这是我的 login
函数代码:
const functions = require("firebase-functions");
const express = require(`express`);
const cors = require(`cors`);
const admin = require(`firebase-admin`);
admin.initializeApp();
const firestore = admin.firestore();
const appLogin = express();
appLogin.use(cors({origin:true}));
appLogin.post("/", async(req:Request, res:Response)=>{
functions.logger.log(`received`);
const body = req.body;
functions.logger.log(body);
const result = await firestore.collection(DbCollections.USER).add(body);
return res.status(201).send(JSON.stringify({"user_id":result.id}));
});
exports.login = functions.https.onRequest(appLogin);
没什么特别的...
因此,当我在 postman 中使用屏幕截图中的 url - 它工作正常。
但我想像下一个一样使用自定义域:
https://mydomai.com/api/login
这是我的 firebase.json
托管部分:
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "/api/login",
"function": "login"
}
]
}
但是当我尝试使用自定义域访问 login
- 它 returns 我 404
没有任何有价值的错误消息:
有什么想法吗?
重写的 source
不会从函数调用中的 URL 中删除,因此您可能希望将 appLogin.post("/", ...)
更改为 appLogin.post("/api/login/", ...)
。
我正在尝试为 Firebase 函数设置自定义域。
自定义域已经过验证并且可以正常工作。
我的 firebase 在 us-central1
:
这是我的 login
函数代码:
const functions = require("firebase-functions");
const express = require(`express`);
const cors = require(`cors`);
const admin = require(`firebase-admin`);
admin.initializeApp();
const firestore = admin.firestore();
const appLogin = express();
appLogin.use(cors({origin:true}));
appLogin.post("/", async(req:Request, res:Response)=>{
functions.logger.log(`received`);
const body = req.body;
functions.logger.log(body);
const result = await firestore.collection(DbCollections.USER).add(body);
return res.status(201).send(JSON.stringify({"user_id":result.id}));
});
exports.login = functions.https.onRequest(appLogin);
没什么特别的...
因此,当我在 postman 中使用屏幕截图中的 url - 它工作正常。 但我想像下一个一样使用自定义域:
https://mydomai.com/api/login
这是我的 firebase.json
托管部分:
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "/api/login",
"function": "login"
}
]
}
但是当我尝试使用自定义域访问 login
- 它 returns 我 404
没有任何有价值的错误消息:
有什么想法吗?
重写的 source
不会从函数调用中的 URL 中删除,因此您可能希望将 appLogin.post("/", ...)
更改为 appLogin.post("/api/login/", ...)
。