繁体   English   中英

Express.js-使用路由参数时如何处理404页面

Express.js - How to handle 404 pages when using route parameters

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

当我还尝试捕获具有动态参数的网址时,如何处理404页? 即, /:id

下面的代码永远不会达到404的最后一条规则,即使它们不存在,Express也会始终尝试打开html文件。

const express = require('express');
const app = express();

app.use(express.static(__dirname + '/dev'));

app.get('/', function(req, res) {
  res.sendFile(`${__dirname}/dev/index.html`);
});

app.get('/:id', function(req, res) {
  res.sendFile(`${__dirname}/dev/pages/${req.params.id}.html`);
});

app.get('*', function(req, res) {
  res.status(404).sendFile(`${__dirname}/dev/404.html`);
});

app.listen(3000, function() {
  console.log('Express server started http://localhost:3000');
});
1 个回复

您的代码永远不会达到404规则。 您需要从动态路由本身内部处理404错误。 由于您已在根路径之后定义了动态参数,因此该路径之后的路径将进入该路由,并且永远不会达到404规则。

5 NextJS:Express端点返回404时的404页面?

API端点(Express)发送404。 return res.status(404).json({ message: 'Not Found !!!' }) 在_app组件中 该应用程序组件在另一个组件中调用getInitialProps ...这里调用的API将返回404状态 ...

2019-07-03 19:10:30 1 31   next.js
6 Express.js-如果路由有多个错误-404错误

GET / user / me-发送回404(找不到资源) 如果我将第二个“ /”更改为“ _”(即GET users_me),则可以使用。 我有两个问题: 1)如何解决它,以便我可以使用“ GET / user / me”? 2)它与下划线一起使用,因此使用斜杠与下划线 ...

2018-06-22 13:03:54 1 41   express
7 在url中使用参数时的404页面

在文件末尾 并且适用于www.website/wrongpath,但是在我 它根本不起作用,并且在您写入诸如/ path / 23187123之类的错误ID时会破坏节点服务器。 我尝试做类似的事情: 要检查ID是否存在,然后取消请求,但这也不起作用。 如何使它与404 ...

10 使用Express.js的自定义404页面

引发404错误时,我正尝试重定向到html页面。 我的公用文件夹中有一个名为404的文件夹。 这是index.js中的代码: 但是我收到以下错误: 错误:未指定默认引擎,也未提供扩展名。 在EventEmitter.render(/home/pi/server/node_mo ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM