![](/img/trans.png)
[英]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.