javascript - 从节点中不存在的路由重定向?
问题描述
在我的应用程序中,如果我尝试输入一些不存在的路线,可以说 -www.mydomain.com/nonExistingRoute
我得到一个带有文本的空白页:Cannot GET /nonExistingRoute/
。
更重要的是 - 如果我在本地执行此操作(在本地主机上以开发模式运行应用程序时),如果我执行相同操作,它会正确输入/
路由(因为已将其设置在客户端路由中)。但它在生产模式下(在我的域上)无法正常工作。
我app.js
在节点中的应用配置:
app.use('/api', apiRouter); // only api responds
app.use('*', express.static('public')); // serving static files
注意:我有服务器端渲染处于活动状态。所以每条路线,就像/
是在服务器端预渲染的。
如果有人获得不存在的路线(但没有/api
),我该怎么办?他被重定向到/
?谢谢!
解决方案
只需将其添加为最后一条规则:
app.use((_, res) => res.redirect("/"));
推荐阅读
- .net - 如何将 Windows 驱动程序工具包 (WDK) 安装到 Visual Studio 2017 Pro 中以便对 WinUSB 进行编程?
- macos - 在杯子中正确使用选项“-o CustomPrintSize=”
- scheme - 使用 Foldr/Foldl 交替求和(球拍)
- php - 删除父或“包装”数组
- angular - Angular Material 中 Mat 对话框中的计时器
- php - 使用 mysql 查询连接表?
- excel - 与数组一起使用时 Excel Range.AutoFilter 出错(Powershell)
- css - 样式化 React Bootstrap 下拉按钮 div
- python - 如何测试依赖项是否安装?
- php - 从json调用数据四舍五入到小数点后2位 - php