淺探express路由和中間件的實現
1. Express簡介
express是一個基于node.js平臺的極簡,靈活的web應用開發(fā)框架,它提供一系列強大的特征,幫助你創(chuàng)建各種web和移動設備應用
express框架核心特征:
- 可以設置中間件來響應HTTP請求
- 定義了路由表用于執(zhí)行不同的HTTP請求動作(url=資源)映射
- 可以通過向模板傳遞參數來動態(tài)渲染HTML頁面
2. 安裝
在命令行中輸入cnpm install express -g即可進行全局安裝
3. 路由和中間件
使用前,先引入express
var express = require('express'); var app = express();
路由
路由表示如何處理HTTP請求中的路徑(path)部分
http://host:[port]/[path]
例子:
app.get('/',function(req,res){ res.send('hello world') })
以上例子中,get可換成post或其他請求方法,方法的第一個參數'/'為匹配所有路徑,可用正則表達式或其他方法進行配對,第二個參數是要執(zhí)行的函數
中間件
中間件是在服務器收到請求和發(fā)送響應之前所執(zhí)行的一些函數
中間件 是一個函數,它可以訪問請求對象(request object (req)), 響應對象(response object (res)), 和 web 應用中處于請求-響應循環(huán)流程中的中間件,一般被命名為 next 的變量。
中間件的功能包括:
- 執(zhí)行任何代碼。
- 修改請求和響應對象。
- 終結請求-響應循環(huán)。
- 調用堆棧中的下一個中間件。
- 如果當前中間件沒有終結請求-響應循環(huán),則必須調用 next() 方法將控制權交給下一個中間件,否則請求就會掛起。
用app.use來在請求或響應之前插入一個中間件
app.use(function(req,res,next){ //執(zhí)行一些代碼 next(); })
可以有多個中間件,next表示讓后面中間件繼續(xù)處理
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Nodejs連接mysql并實現增、刪、改、查操作的方法詳解
這篇文章主要介紹了Nodejs連接mysql并實現增、刪、改、查操作的方法,結合實例形式詳細分析了nodejs針對mysql數據庫的的連接、mysql數據庫的創(chuàng)建及nodejs針對mysql增刪改查等相關操作具體實現技巧,需要的朋友可以參考下2018-01-01