我的 node .js应用程序的模型与express/examples/mvc应用程序类似.

在控制器操作中,我想用一条定制的HTTP消息显示HTTP 400状态.

HTTP/1.1 400 Bad Request

但我想送

HTTP/1.1 400 Current password does not match

我try 了各种方法,但都没有将http状态消息设置为我的自定义消息.

我当前的解决方案控制器功能如下所示:

exports.check = function( req, res) {
  if( req.param( 'val')!=='testme') {
    res.writeHead( 400, 'Current password does not match', {'content-type' : 'text/plain'});
    res.end( 'Current value does not match');

    return;
  } 
  // ...
}

一切正常,但...这似乎不是正确的方法.

有没有更好的方法使用express设置http状态消息?

推荐答案

你可以查res.send(400, 'Current password does not match')

UPDATE for Expressjs 4.x

用这种方式(看express 4.x docs):

res.status(400).send('Current password does not match');
// or
res.status(400);
res.send('Current password does not match');

Node.js相关问答推荐

Google功能框架无法本地运行 struct 化云功能

AWS Lambda呼叫未登录控制台

Express 4.18正文解析

Jest由于UUID而无法解析测试,即使在Jest中启用ESModule支持后也是如此

如何使用聚合管道交换键值对

当变量在另一个文件中初始化时,在初始化错误之前无法访问变量

如何使用包含条件正确分页的 sequelize 查询?

Mongoose post中间件触发deleteMany

在 getServerSideProps 中使用 EmailProvider 获取 NextAuth 会话会抛出 fs找不到模块

为什么 nginx 不将我的 react index.html 作为后备服务

使用 fs.createWriteStream 将数据写入 bigquery (node.js) 时出现模式错误

Axios 响应循环通过函数只返回第一个映射对象的结果

React Native:执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade 时发生故障

将环境变量从 GitHub 操作传递到 json

如何为一个网站实现这 2 个网址.即 www.administrator.sitename.com 和 www.sitename.com?

通过 npm 导入 Sass

使用 Socket.io 将客户端连接到服务器

Node.JS 中的基本 HTTP 身份验证?

从 JavaScript 文件或 REPL 中 require()'ing CoffeeScript 文件

如何调试 Gulp 任务?