淺析express以及express中介軟體
一、express:
1.express:
Express是什麼?
Express是基於node.js平臺的web應用開發框架;
作用:可以實現快速搭建骨架;
優點:開發web應用更加方便,更加快捷。
(通過node.js在控制檯輸出“hello world!”和express在控制檯輸出“hello world!”進行對比,直接感受express的優點)
Node.js在控制檯輸出“hello world!”:
const http = require('http');
http.createServer((rep,res)=>{
res.end('hollo world!')
}).listen(2000)
依據上面的程式碼,當我們需要處理get或post請求時,只能將請求的資料程式碼寫在createSever包裹的函式中;
const express = require('express');
//將express賦值給app,此處可以理解為app相當於express
var app = express();
//處理使用者請求:
app.get('/',(req,res)=>{
res.send('hello world!');
})
Express處理請求是通過函式去呼叫方法,這樣一來就更省事了。
瞭解了express是什麼,要想熟練運用
在解析之前先補充一下如何建立express:
新建一個express資料夾——在express資料夾下開啟命令視窗——輸入命令:express -e(生成express)——在命令框輸入cnpm install
建立好express之後開始解析express檔案:
進入package.json檔案,檢視“scripts:{“start”:”supervisor/bin/www”}”,表示bin/www是入口檔案——進去bin/www中(作用:在www中實際就是建立了一個伺服器)——進入app.js——進入route
在此有必要提及public優先順序,public也是express檔案下的一個子資料夾,裡面存放的是靜態檔案,所謂public的優先順序就是指在渲染頁面時是優先渲染public檔案下的靜態頁面,再渲染views。
二、express中介軟體:
要理解express中介軟體,先列舉一個生活中的例子,中介大家肯定都很熟悉,我們都知道中介扮演的角色就是把房東的意見反饋給租客,再將租客的意願傳達給房東,在介於房東和租客之間的一個存在,而express中介軟體類似於中介,是介於請求和回覆之間的一個函式。
中介軟體的生命週期:收到request——在服務端進行處理——處理完髮送response回去。
使用中介軟體即app.use();
Next():使用下一個中介軟體;
如果當前中介軟體沒有終結請求-響應迴圈,則必須呼叫 next() 方法將控制權交給下一個中介軟體,否則請求就會掛起。使用可選則掛載路徑,可在應用級別或路由級別裝載中介軟體。可裝載一系列中介軟體函式,在掛載點建立一箇中間件系統棧。