對于express中間件的了解
關于express中間件,官網對它的闡述是這樣的:“Express是一個自身功能極簡,完全是路由和中間件構成一個web開發架構:從本質上來說,一個Express應用就是在調用各種中間件。”由此可見,中間件在Express開發中的重要性,是以這裡我們就專門來了解一下中間件。
中間件可以分為以下五種:
- 應用級中間件
- 路由級中間件
- 錯誤進行中間件
- 内置中間件
- 第三方中間件
一、中間件結構
1、app.use([path],function)
path:是路由的url,預設參數‘/',意義是路由到這個路徑時使用這個中間件。
function:中間件函數。
這個中間件函數可以了解為就是function(request,response,next)。
例如:
var express = require('express');
var app = express();
app.listen(9000, function () {
console.log('listening 9000')
});
app.use(middleware1);
app.use(middleware2);
app.use(middleware3);
上面代碼當中的middleware1、middleware2、middleware3就是中間件,我們使用app.use,就是在使用這個中間件。是以說中間件的使用方法就是 app.use(middleware)。 請求來了之後,會依次通過各個中間件進行處理,處理完成之後,就next(),把控制權交給下一個中間件,到了最後,我們就可以很好的使用路由了。
總的來說中間件的使用就是
app.use(fn); //中間件的函數
app.use("位址", function (req, res) {
// 業務
})
二、中間件的了解總結
浏覽器向伺服器發送一個請求後,伺服器直接通過request.定位屬性的方式得到通過request攜帶過去的資料(有使用者輸入的資料和浏覽器本身的資料資訊)。這中間就一定有一個函數将這些資料分類做了處理,已經處理好了,最後讓request對象調用使用,對的,這個處理資料處理函數就是我們要說的中間件。由此可見,中間件可以總結以下幾點:
1、封裝了一些處理一個完整事件的功能函數。
2、非内置的中間件需要通過安裝後,require到檔案就可以運作。
3、封裝了一些或許複雜但肯定是通用的功能。