首页 > 解决方案 > 注销时 Heroku 节点应用程序错误“没有这样的文件或目录”

问题描述

该应用程序完全运行,直到部署在 heroku 上。除了返回 404 Not Found 状态代码的注销按钮外,一切正常(包括登录)。

在heroku日志中:

heroku[router]: at=info method=GET path="/logout" host=xxxxxxx request_id=4596d3a6-5b4b-4c29-846f-de5b80e718e0 fwd="178.248.111.38" dyno=web.1 connect=1ms service=7ms status =404 字节=412 协议=https 2020-07-02T21:26:49.990193+00:00 app[web.1]:错误:ENOENT:没有这样的文件或目录,stat '/app/build/logout'

这是服务器中 app.js 的代码:

app.get('/:route', (req, res) => {
  const route = req.params.route;
  res.sendFile(path.join(__dirname, 'build', route));
});

app.post("/register", (req, res) => {
  registerUser(req, res);
});

app.post("/login", (req, res) => {
  loginUser(req, res);
});

app.get("/logout", (req, res) => {
  logoutUser(req, res);
});

什么可能导致这个问题?登录路径具有完全相同的路径,但使用“登录”而不是“注销”,那么为什么一个工作但另一个工作不工作?

标签: javascriptnode.jsheroku

解决方案


推荐阅读