【发布时间】:2021-07-17 05:41:39
【问题描述】:
我正在创建一个由 NodeJS 和 ExpressJS 支持的 React Web 应用程序。我的项目不适合服务器端渲染,因此我完全使用 React 来管理路由。
但是,当应用程序成功重定向到自定义 404 页面时,它不会在控制台上输出任何消息。由于路由是在没有 SSR 的情况下实现的,所以我也不希望这样。但我找不到在控制台上正确返回状态码错误(本例中为 404)的方法。
tldr:我想在控制台上模拟一个真正的 404 错误,而实际上没有响应对象。
我试过console.error(404),但它只输出这个:
但我想看到的是这样的:
感谢任何想法。
【问题讨论】:
-
你能从你的 nodejs 后端发送 404 状态吗?
-
不能在控制台模拟404错误;你必须从服务器返回一个 404 HTTP 状态码。
-
我可以使用 ExpressJS
res.status(404).send("Not Found")做到这一点,但这是在管理请求和响应的app.use(function(err,req,res,next){ ... }函数中。由于我的 React 代码没有请求-响应管理,我无法原生返回错误。 -
@chipit24 没有使用服务器端渲染的静态路由,我不知道如何让服务器端知道 React 捕获的 404 错误(使用
<Route component={NotFound} />) -
为什么需要手动在控制台抛出404错误?如果您只想显示“404(未找到)”错误,您可以在 Express 中设置一个 404 端点,并在您在前端点击未定义的路由时向该端点发送请求。
标签: javascript reactjs console