我的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();
}
})