2014-09-03 3 views
0

Я пытаюсь включить промежуточную программное обеспечение (паспорт-клиент-носитель) в MEAN.js, однако он использует другой синтаксис маршрутизации, чем курьерский 4.маршрутизация в mean.js (как включить middlware?)

Экспресс API sytnax является:

app.get('/', function(req, res){ 
    res.send('hello world'); 
}); 

в MEAN.js маршрутов определяются следующим образом:

app.route('/articles') 
    .get(articles.list) 
    .post(users.requiresLogin, articles.create); 

Как включать промежуточное программное обеспечение в маршрутизаторе MEAN.js (в моем случае паспортный-HTTP-носитель проверить токен)? Пример реализации

HTTP-знаменосца, как промежуточного программного:

app.get('/profile', 
    passport.authenticate('bearer', { session: false }), 
    function(req, res) { 
    res.json(req.user); 
    }); 

Как я должен сделать это в MEAN.js?

+2

это конечно будет выглядеть как Express 4 для меня ... http://expressjs.com/4x/api.html#router.route – Brad

ответ

2

Для тех, кто еще в конечном итоге здесь пытаются выяснить, как это сделать, вот как это можно сделать:

app.route('/articles') 
    .get(passport.authenticate('bearer', { session: false }), articles.list) 
    .post(passport.authenticate('bearer', { session: false }), articles.create); 

Или, чтобы сделать его выглядеть лучше, вся функция аутентификации может быть помещен в users.authorization.server.controller.js и называется woith что-то вроде этого:

app.route('/articles') 
    .get(users.requiresToken, articles.list) 
    .post(users.requiresToken, articles.create); 
+0

Как ты сделал это? Как вы сами управляли аутентификацией? Вы создаете токен? Как вы их обновляете? Можете ли вы поделиться репо на github? Не удалось интегрировать 'pass-http-bearer' = ( –