2013-11-09 27 views
1

我希望路由到函數,而不是視圖(用於與3rd party API集成)。有了明確的,它看起來像:如何路由到sails.js中的函數

app.get('/auth/signup', passport.authenticate('dailycred'));

會是什麼sails.js相同呢?

還是建議通過創建一個視圖和控制器對來實現這一點,它將調用這個函數,而不是直接調用函數?

謝謝!

回答

0

這將是最好創建視圖和控制器對,因爲我們可以讓更多的customizations.Sails.js相當於將

我們可以通過添加這個到route.js文件路由功能。對於在我們的函數將被調用的AuthController.js

module.exports.routes = { 
    '/auth/signup': { 
    controller: 'authController', 
    action: 'login' 
    } 
}; 

//示例代碼

var AuthController = { 
    'login': function(req, res, next) { 
    passport.authenticate('google', { 
     failureRedirect: '/login', 
     scope: ['openid', 'email'] 
     }, 
     function(err, user) { 
     req.logIn(user, function(err) { 
      console.log("google") 
      if (err) { 
      res.view('500'); 
      return; 
      } 
      req.session.authenticated = true; 
      res.redirect('/index'); 
      return; 
     }); 
     })(req, res, next); 
    } 
}