我有一个节点应用程序,该应用程序使用passportjs进行身份验证,当我使用localhost:5000时它可以工作,但是当我尝试使用ngrok发出请求时,身份验证失败。我正在使用passportjs进行身份验证。这是我的身份验证中间件:
module.exports = function (req, res, next) {
if (!req.user) {
return res.status(401).json({ msg: 'Authentication Failure' });
}
next();
};
这是使用此中间件的示例路由:
router.get('/auth', auth, (req, res) => {
res.json(req.user);
});
登录后进入localhost:5000 / auth时,我可以看到用户数据。如果我改为访问ngrok url / auth,则会收到消息“身份验证失败”,表示该消息未通过auth中间件。为什么这不起作用?