Node.js 快车:避免未定义/未使用的路线
我正在用express构建一个小型微服务,我想知道如何避免未定义的路由, i、 e: 在我的API中,我只定义了Node.js 快车:避免未定义/未使用的路线,node.js,api,express,Node.js,Api,Express,我正在用express构建一个小型微服务,我想知道如何避免未定义的路由, i、 e: 在我的API中,我只定义了 /api/myendpoint 这与预期的一样,但是如果我向运行express的同一主机+服务器发送任何类型的请求,即 /api/route/dont/exist 我得到了一个丑陋的html响应,我想避免它,或者返回某种自定义消息 我一直在挖,但找不到任何解决办法 提前谢谢 在Express中 简而言之,它看起来是这样的: // custom error handler app.
/api/myendpoint
这与预期的一样,但是如果我向运行express的同一主机+服务器发送任何类型的请求,即
/api/route/dont/exist
我得到了一个丑陋的html响应,我想避免它,或者返回某种自定义消息
我一直在挖,但找不到任何解决办法
提前谢谢 在Express中
简而言之,它看起来是这样的:
// custom error handler
app.use(function (err, req, res, next) {
console.error(err.stack)
res.status(500).send('Something broke!')
});
你把这个放在其他中间件之后。有关更多信息,请参阅上面的文档链接。如果未找到特定传入请求的路由处理程序,或者任何路由调用带有错误的next(err)
,则可以控制将什么响应发送回客户端。只有在发生错误的情况下才会调用此中间件处理程序。然后,您可以用Express发送任何您想要的回复。
简而言之,它看起来是这样的:
// custom error handler
app.use(function (err, req, res, next) {
console.error(err.stack)
res.status(500).send('Something broke!')
});
你把这个放在其他中间件之后。有关更多信息,请参阅上面的文档链接。如果未找到特定传入请求的路由处理程序,或者任何路由调用带有错误的next(err)
,则可以控制将什么响应发送回客户端。只有在发生错误的情况下才会调用此中间件处理程序。然后,您可以发送任何您想要的响应