2017-02-23 50 views
0

構建節點Web服務。這包含多個路線。 其中一些需要認證,其他則不需要。 我使用JSON的Web令牌創建和驗證令牌,這項工作,只要我很高興與以下:如果需要驗證,則指定每個節點路由

router 
    // main routes 
    .get('/', main.catchAll) 
    .post('/register', main.register) 
    .post('/authenticate', main.authenticate) 
    .use(main.verifyToken) 
    .get('/years', main.years) 
    // game routes 
    .get('/games', game.newestGames) 
    .get('/game/title/:id', game.gameName) 
    .get('/game/:id', game.gameDetails) 
    .get('/genres', genres.genres) 

這導致在該.use(...)後確定需要認證的所有路由。 但是,爲了跟蹤我所有的路線,我想按照類別對​​它們進行分組,但這意味着我無法使用驗證,因爲我已經習慣了。

例如:我不想.get('/games', game.newestGames)需要認證

有每個路由指定它需要驗證或沒有辦法?

回答

2

當然,你可以這樣做:

app.use('/years', main.varifyToken, main.years) 

或者,如果你想讓它僅適用於某些動詞:

app.get('/years', main.years) 
app.post('/years', main.verifyToken, main.postYears) 

您也可以考慮使用路由器組功能性和權威性。我覺得我更容易理解我的路線

相關問題