之前提到如何在 Node.JS 使用Express, Express 路由(route)設定方法 。 Express middleware 介紹 Express 裡面有一個十分好用的應用概念稱為middleware,可以透過 middleware 做出複雜的效果,同時上面也有介紹 next 方法參數傳遞,就是靠 middleware 的概念來傳遞參數,讓開發者可以明確的控制程式邏輯。 // .. create http server app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(express.session()); 上面都是一種 middleware 的使用方式,透過 app.use 方式裡面載入函式執行方法,回應函式會包含三個基本參數, response , request , next ,其中 next 表示下一個 middleware 執行函式 ,同時會自動將預設三個參數繼續帶往下個函式執行。 Express middleware 範例 底下有個實驗, 上面的片段程式執行後,開啟瀏覽器,連結上 localhost:1337/,會發現伺服器回應結果順序如下, first middle ware second middle ware execute middle ware end middleware function Express middleware 結論 從上面的結果可以得知,剛才設定的 middleware 都有執行。 在 app.use 設定的 middleware 是所有url 皆會執行方法,如果有指定特定方法,就可以使用 app.get 的 middleware 設定。在 app.get 函式的第二個參數,就可以帶入函式,或者是匿名函式,只要函式裡面最後會接受 request, response, next 這三個參數,同時也有正確指定 next 函式的執行時機,最後都會執行到最後一個方法,當然開發者也可以評估程式邏輯要執行到哪一個階段,讓邏輯可以更為分明。 工商服務 Node.JS Taiwan 社群 目前著手共筆的中文教學資料,歡迎有興趣者共同關注,相關網址資訊, Node
熱血,是一輩子的事! Answer is there, dig it.