node.js - 如何停止中间件链?

标签 node.js express

如果出现错误,如何正确结束中间件链?

在我的代码中有

    if (someProblem) {
        res.status(statuscode).json({message: 'oops'});
        return;
    }

然而,此后链中的中间件不断被调用,给我发送后无法设置 header 错误。

最佳答案

中间件不会自行进步。它只会在您调用 next() 时进入链中的下一步,因此只要您不调用 next(),那么下一步就不会执行.

因此,如果您只是发送响应并返回(不调用 next()),那么您应该没有问题。

您在问题中显示的代码本身不会导致您提到的错误消息,因此必须有更多的事情发生,您没有向我们展示该错误的发生。

关于node.js - 如何停止中间件链?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40922900/

相关文章:

javascript - 如何将 moment js 日期时间转换为字符串,反之亦然

javascript - React 应用程序在加载包含它的 HTML 页面时根本不呈现

javascript - 在 Node js 中使用 res.render() 而不是 res.send()

android - Node : Callback is not a function - Email verification

json - Javascript从node/express服务器读取gz文件

javascript - 无法从expressJS中的HTML表单获取数组

node.js - FineUploader onComplete 未使用 CoffeeScript 触发

javascript - Node js - 在 mongoose pre ('save' ...)中散列密码不会存储到数据库

javascript - javascript中如何处理这个默认参数?

javascript - Sequelize 实例方法 save() 并发行为