部署 firebase Web 应用时出现 404 错误

Getting 404 Error when deploying firebase web app

提问人:MattJ 提问时间:11/15/2023 最后编辑:MattJ 更新时间:11/15/2023 访问量:31

问:

嗨,当我部署我的 firebase Web 应用程序时,我在点击端点时收到 404 not found 错误。

这是我的 index.js 文件的一部分,在我的 src/routes/functions 文件夹中找到。

const port = process.env.PORT || 80;
server.listen(port,'127.0.0.1');
console.debug('Server listening on port ' + port);

// Your web app's Firebase configuration
var firebaseConfig = {
  apiKey: "*",
  authDomain: "*",
  databaseURL: "*",
  projectId: "*",
  storageBucket: "*",
  messagingSenderId: "93371481008",
  appId: "*",
  measurementId: "G-NR8N5HP6RZ"
};
// Initialize Firebase
if (!firebase.apps.length) {
  firebase.initializeApp(firebaseConfig);
}else {
  firebase.app(); // if already initialized, use that one
}
router.get('/test', function(req,res){
  console.log("router map test");
  res.send("test page");
});

当我通过键入以下命令来部署 firebase Web 应用时:sudo firebase deploy

当我尝试在 index.js 中点击测试端点时 - 我收到 404 错误。curl -X GET https://PROJECT_ID/test

这是我的firebase.json文件:

  "hosting": {
    "public": "src/main/www",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ]
  },```
  "functions": [
    {
      "source": "src/routes/functions",
      "codebase": "map-print",
      "ignore": [
        "node_modules",
        ".git",
        "firebase-debug.log",
        "firebase-debug.*.log"
      ]
    }
  ],
  "rewrites": [
    {
      "source": "/test",
      "function": "test"
    }
  ]
}



节点 .js Firebase 部署 http-status-code-404 端点

评论


答:

1赞 NoNam4 11/15/2023 #1

您缺少导出函数本身。

我想你正在使用快递来处理你的路由,所以这里有一个最小的例子:

import express from 'express'

const app = express()
app.get('/test', req, res => {
  return res.send('hello world')
})

// this is what you're missing
exports.myFuncionName = functions.https.onRequest( app )

评论

0赞 MattJ 11/15/2023
谢谢,为我工作。firebase 应用网址为exports.app = functions.https.onRequest(app);https://us-central1-PROJECT_ID.cloudfunctions.net/app
0赞 NoNam4 11/15/2023
很高兴我帮助你。请不要忘记将我的答案标记为您问题的😁解决方法