перенаправить на страницу входа, если вы не авторизовались в почтовом запросе

1
app.post("/customer/goods/available/disableGoods", auth.restrict,
        auth.acl([__FEATUREENUM.FP_SALE_GOODS]),
        postDisableGoodsHandler);}

exports.restrict = function (req, res, next) {
    logger.enter();
    if (req.session.operator) {
    if (req.url.indexOf("customer") > -1 && 
      req.session.operator.operatorType == "CUSTOMER") {
      return next();
    }
    if (req.url.indexOf("customer") > -1 && 
      req.session.operator.operatorType != "CUSTOMER") {
      logger.debug("您所访问的页面"+req.url+"没有权限");
      return res.redirect("/no_permission")
    }
    if (req.url.indexOf("customer") == -1 && 
    req.session.operator.operatorType == "CLIENT") {
      return next();
    }}
    logger.ndump("url", req.url);var nextTo = 
    encodeURIComponent(req.url);res.redirect("/loginNew?nextTo=" + 
    nextTo);};


    app.post("/loginNew", getLoginHandler);


    function getLoginHandler(req, res) {
    logger.enter();

    var nextTo = req.param('nextTo');
    logger.ndump("nextTo", nextTo);
    if (!nextTo)
      nextTo = APPURL;

    nextTo = encodeURIComponent(nextTo);

    dataService.commonData(req, function (data) {
      data = underscore.extend(data, {passHolder: "", nextTo: nextTo});
      data['paginator'] = {};
      res.render("pages/common/login.ejs", {data: data});
    });
  }

Изображение 174551

В качестве этого, я хочу использовать middleware auth. resktrict, чтобы проверить, является ли статус логином в почтовом запросе, иначе перенаправление на страницу входа. Я получил ответ, но браузер не перешел на новую страницу, как я.

  • 0
    используйте req.redirect
  • 0
    Я пытался, на самом деле req.redirect не является функцией
Теги:

1 ответ

0

Прежде всего, вы не должны объявлять var nextTo дважды. Возможно, вам стоит попытаться сделать данные сеанса, такие как req.session.loggedIn а затем проверить. Подобно:

if(!req.session.loggedIn){
    encodeURIComponent(req.url);res.redirect("/loginNew?nextTo=" + 
    nextTo);};
}
  • 0
    спасибо, теперь дело в том, что браузер не может загрузить страницу входа в систему, даже перенаправление уже успешно
  • 0
    В чем ошибка в командной строке?
Показать ещё 7 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню