【发布时间】:2015-11-16 01:56:51
【问题描述】:
这是场景。
如果用户想查看需要用户访问的页面,我想将他重定向到主页,但是当我尝试访问主页时出现 ERR_TOO_MANY_REDIRECTS 错误。
我不知道如何解决这个问题。
app.js
exports.ensureAuthenticated = function (req, res, next) {
jwt.verify(req.cookies.userToken, "NICETRY", function (err, decoded) {
if (err) {
res.redirect("http://localhost:4000");
} else {
// no err
if (decoded.id) {
req.id = decoded.id;
req.iat = decoded.iat;
next();
} else {
res.send("invalid cookie");
}
}
});
};
路由/前端/index.js
var express = require('express');
var router = express.Router();
var indexController = require('../../controllers/frontend/indexController');
var auth = require('../../app').ensureAuthenticated;
router.get('/', auth, indexController.index);
module.exports = router;
indexController.js
exports.index = function (req, res) {
res.render('frontend/home/index');
};
【问题讨论】:
-
您正在通过要求对根路由进行身份验证来创建重定向循环。也许将您的重定向更改为本地主机上的根路由以外的其他内容。