自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Express 中間件原理,就這?

開發(fā) 前端
在使用中間件函數(shù)的時(shí)候,有兩個(gè)地方我們需要注意:一個(gè)是 app.use() 添加一個(gè)中間件函數(shù),一個(gè)是回調(diào)函數(shù)中的 next() 這種特有的標(biāo)志,它的意思很簡(jiǎn)單就是代表下一個(gè)中間件函數(shù)執(zhí)行。

[[394897]]

今天在搞 express 的時(shí)候,用到了中間件函數(shù)。至于它的概念和使用技巧,我們就不提了。我只是對(duì)這個(gè)中間件函數(shù)內(nèi)部的結(jié)構(gòu)很感興趣。所以今天就和大家一起聊聊這個(gè)中間件函數(shù)的原理。

使用技巧

在使用中間件函數(shù)的時(shí)候,有兩個(gè)地方我們需要注意:一個(gè)是 app.use() 添加一個(gè)中間件函數(shù),一個(gè)是回調(diào)函數(shù)中的 next() 這種特有的標(biāo)志,它的意思很簡(jiǎn)單就是代表下一個(gè)中間件函數(shù)執(zhí)行。

思路分析

通過(guò)使用之后,我們大致能明白,內(nèi)部有個(gè)存放中間件函數(shù)的東西,并且這是個(gè)數(shù)組。所以我們就簡(jiǎn)單實(shí)現(xiàn)一下這個(gè)過(guò)程。

在 express 中都是通過(guò) callback 回調(diào)函數(shù)去執(zhí)行中間件函數(shù),我們這里就簡(jiǎn)單模擬一個(gè) compose 函數(shù),實(shí)現(xiàn)所有中間件函數(shù)的調(diào)用。

fnmiddle() 執(zhí)行就是調(diào)用 compose 的返回函數(shù),它里面要對(duì) middleware 數(shù)組中的所有函數(shù)處理,在這個(gè)返回函數(shù)內(nèi),我們使用遞歸的方式來(lái)實(shí)現(xiàn)一下這個(gè)流程。

這樣一個(gè)中間件函數(shù)的大致原理就出來(lái)了,整體理解起來(lái)還是比較簡(jiǎn)單的,不過(guò)中間件思想在 web 的覆蓋范圍還是很廣的,你能列舉出來(lái)并寫出大致的思路嗎.

 

責(zé)任編輯:姜華 來(lái)源: 勾勾的前端世界
相關(guān)推薦

2020-11-06 09:24:09

node

2021-08-10 14:10:02

Nodejs后端開發(fā)

2021-02-11 08:21:02

中間件開發(fā)CRUD

2011-05-24 15:10:48

2018-07-29 12:27:30

云中間件云計(jì)算API

2018-02-01 10:19:22

中間件服務(wù)器系統(tǒng)

2016-11-11 21:00:46

中間件

2021-07-19 07:55:24

Redux中間件原理

2023-06-29 10:10:06

Rocket MQ消息中間件

2023-10-24 07:50:18

消息中間件MQ

2009-06-16 15:55:06

JBoss企業(yè)中間件

2012-11-30 10:21:46

移動(dòng)中間件

2012-11-01 15:16:22

金蝶中間件研究院院長(zhǎng)

2021-06-15 10:01:02

應(yīng)用系統(tǒng)軟件

2013-03-14 22:54:15

PaaS中間件平臺(tái)即服務(wù)

2014-06-20 09:18:54

Dustjs中間件

2015-08-11 11:16:36

淘寶中間件

2013-03-13 10:37:22

中間件Windows

2018-05-02 16:23:24

中間件RPC容器

2019-09-29 11:04:22

MySQL數(shù)據(jù)庫(kù)Atlas
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)