【问题标题】:middleware is not working in nodejs中间件在 nodejs 中不起作用
【发布时间】:2017-07-26 23:36:23
【问题描述】:

我有这个代码:

exports.get_transducer_edit = (req, res) => {
    if(req.isAuthenticated()){
        Transducer.findById(req.params.id, (err, foundTransducer) => {
            if(err){
                res.redirect('/en/dashboard');
            } else {
                res.render('dashboard/transducer_edit-dashboard', {transducer: foundTransducer});
            }
        });
    }else{
        req.flash('error','You need to log in to do that');
        res.redirect('/dashboard/login');
    }
};

它运行没有问题,但是当我在 middleware/index.js 中创建中间件时:

var middlewareObj = {};

middlewareObj.isLoggedIn = function(req, res, next){
    if(req.isAuthenticated() ) {
        return next();
    }
    res.redirect('/dashboard/login');
};

module.exports = middlewareObj;

我在这段代码中调用它:

const middleware = require('../middleware');
const Transducer = require('../models/productTransducers');



exports.get_transducer_edit =  middleware.isLoggedIn, (req, res) => {
        Transducer.findById(req.params.id, (err, foundTransducer) => {
            if(err){
                res.redirect('/en/dashboard');
            } else {
                res.render('dashboard/transducer_edit-dashboard', {transducer: foundTransducer});
            }
        });
    
};

我做错了什么?请帮忙...

【问题讨论】:

  • 这种语法如何工作? exports.get_transducer_edit = middleware.isLoggedIn, (req, res) => {
  • 没有,我错了,我刚刚解决了。这是我的控制器。我已经声明了这样的路线:router.get('/en/dashboard/products/transducers/:id/edit',transducer_controller.get_transducer_edit);

标签: node.js express middleware


【解决方案1】:

对不起,我刚刚解决了。

我在路由中调用了中间件:

router.get('/en/dashboard/products/transducers/:id/edit', middleware.isLoggedIn,transducer_controller.get_transducer_edit);

我试图在我的控制器中调用它:

exports.get_transducer_edit = middleware.isLoggedIn, (req, res) => { ...

错了!

再次感谢。

【讨论】:

    猜你喜欢
    • 2018-05-10
    • 1970-01-01
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-30
    • 2023-03-16
    相关资源
    最近更新 更多