2016-06-08 48 views
4

嘿,我使用基本身份驗證對Node.js的固定路線。我對Node.JS非常陌生,不明白在這種情況下下一個函數的作用。我試圖做的是確保路線:/admin/保護特定路由的Node.js

注意:這是一個用於學習目的的項目,所以登錄部分不會太嚴重,不會被實時使用。

authentication.js

和app.js哪裏進口的模塊認證:

app.get('/admin/', authentication.BasicAuthentication, function(req, res){ 
    console.log("hi u need to login"); 
}); 

所以我想要做的就是路由用戶進一步如果認證經過。

在此先感謝!

回答

2

嘗試:

app.get('/admin/', authentication.BasicAuthentication); 
app.get('/admin/', function(req, res) {}); 
+1

第一備選方案的工作非常出色,隊友的歡呼聲! :) – btmach

1

該功能被稱爲中間件:

中間件的是,你可以定義爲各種用途功能:

  1. using middleware
  2. writing a middleware

在一個簡單的方法是,執行其他操作之前運行的功能,一個主要目的是爲了保護某些航線對未經授權的訪問。

可以函數之前保護私有路線調用然後authentication.BasicAuthentication(REQ,RES){}

一些示例:

app.get('/user-profile/', authentication.BasicAuthentication, function(req, res){ 
    //private info 
}); 

app.get('/foo/', function(req, res){ 
    //public info 
});