使用默认消息在快速响应中设置自定义状态文本?

问题描述

我在我的 api 中使用 express 并尝试使用以下代码自定义错误消息设置为我对用户的响应的 statusText。

        return res.status(401).send('Invalid email');

但是,当我在客户端控制台中打印响应对象时,我收到的是“未授权”和 401,而不是收到带有 401 的“无效电子邮件”的 statusText。更改代码会更改响应消息,但它始终是该代码认消息。

我尝试过其他语法,例如

    res.status(401).send({
        success: false,error: {
          message: 'Invalid email'
        }
      });

res.status(401).send({statusText: 'Invalid email'});

结果相同。

我事先使用了这个处理程序。

app.use(express.json())

如何在回复中发送文本'无效的电子邮件'

解决方法

如果您尝试设置 HTTP“原因短语” - 不要。它不再存在于 HTTP/2 和 HTTP/3 中。