2015-05-31 14 views
7

Dato il seguente itinerario:Handling parametrizzata percorsi a Express-JWT che utilizzano meno

router.get('/api/members/confirm/:id, function (req, res, next) 

Come faccio a specificare il percorso da escludere? Ho provato:

app.use('/api', expressJwt({ secret: config.secret}).unless({path: ['/api/members/confirm']})); 

e

app.use('/api', expressJwt({ secret: config.secret}).unless({path: ['/api/members/confirm/:id']})); 

ma né percorso nel salvo matrice sembrano funzionare?

risposta

11

Il modulo express-jwt sta usando express-unless per darvi questo metodo unless, che non accetta Express' :param sintassi argomenti di percorso.

Ma lo fa accettare una regex, così si potrebbe fare questo:

app.use('/api', expressJwt({ secret: config.secret}).unless({path: [/^\/api\/members\/confirm\/.*/]})); 

Se non ti piace questo, si può anche dare a meno di una funzione:

var myFilter = function(req) {return true;} 
app.use('/api', expressJwt({ secret: config.secret}).unless(myFilter));