[英]ExpressJS, route definition, controller location and api documentation
[英]Pass route parameter to controller in ExpressJS
我正在使用护照JS来验证我的用户帐户。 从app.js将password变量传递给routes.js和controller.js。 当我在route.js和controller.js之间传递时,我不知道如何实现。 我尝试了不同的方法,但是没有用。 我的首要任务是将所有实现代码存储在控制器内部,而不是路由。
App.js
var userRouter = require('./api/routes/userRoutes.js')(app,passport);
Routes.js
module.exports = function(app,passport){
var UserRouter = express.Router();
users = require('./../controllers/UserController')
UserRouter.post('/users', users.authenticate);
}
Controller.js
exports.authenticate = function(req, res, next){
// How do I get passport variable here?
}
不确定在这种情况下这是最好的方法,但是像一个选项一样,您可以尝试以下操作:
在App.js中:
global. passport = passport;
var userRouter = require('./api/routes/userRoutes.js')(app, passport);
在Controller.js中:
exports.authenticate = function(req, res, next) {
console.log(global.passport);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.