节点和快速端点始终返回200

时间:2019-10-21 11:19:34

标签: node.js rest

我的node.js API中的代码块有问题。我有一个简单的JWT身份验证API,它在登录和身份验证方面按预期工作。但是,我无法表示要返回200以外的其他响应状态。

如果我为登录端点输入了无效的用户名或密码,尽管以下代码执行了catch块,但我收到的响应为空200响应,并且由于错误返回了500响应。从post方法。这正在某处丢失,并转换为空200响应。成功登录后,return res.status(200).json....代码将返回正确的响应。

我在所有端点上都有相同的问题,所有错误响应都以空200响应的形式返回。

任何人都可以建议。

app.post('/user/login', async (req, res) => {
    const email = req.body.user.email;
    const password = req.body.user.password;
    try {
      const authServiceInstance = new AuthService();
      const { user, token } = await authServiceInstance.Login(email, password);
      return res.status(200).json({ user, token }).end();
    } catch(e) {
      console.log('Error in login: ', e);
      return res.json(e).status(500).end();
    }
  })

0 个答案:

没有答案