最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Asp .net core 中間件

2020-09-01 10:18 作者:朝夕教育  | 我要投稿


什么是中間件呢?

其實中間件這個概念來源于分布式,當然這是一個狹隘的概念了,現(xiàn)在中間件概念就非常廣泛了。

官網(wǎng)給出了這樣一張圖,這張圖認為從請求到響應過程中間都是中間件,包括我們認為的路由。

看一段node代碼:

沒有學過node 也是ok的,從字面意思就是創(chuàng)建了一個http服務,然后端口是80。
createServer 可以傳入一個方法,中間有兩個參數(shù),一個參數(shù)是req,另一個參數(shù)就是res。
其實就是這么回事,我們寫的就是這個這個方法里面的代碼,至于,你想拿到req的什么參數(shù),或者給res寫入什么信息,這些都是中間件的范疇。

那么問題來了,問什么叫做中間件呢?從語文的層面上理解,那就是分開的,一件一件的。

把這件要執(zhí)行的這些封裝成一個一個模塊,那么這些模塊,這些可以通過調(diào)用next執(zhí)行下一個模塊,同樣,如果不調(diào)用,那么中間件模塊就會中斷,因為有時候真的需要中斷,比如說權(quán)限中間件,

檢查到權(quán)限不符合直接返回讓其跳轉(zhuǎn)到權(quán)限頁面,剩下的模塊也用不到。

下圖為asp .net core 中默認的中間件順序,當然可以自己修改,但是這是一種推薦做法。

挺合理的一個東西,一開始就填入了異常處理機制。

然后是強制https 轉(zhuǎn)換->重定向->靜態(tài)資源文件->路由->是否跨域->認證->授權(quán)->我們自己自定義需求的。

因為這個endpoint 是不建議我們修改的,當然我們可以修改源碼中,畢竟開源了,but not must。

官網(wǎng)中同樣給了我們這個endpoint 做了什么,其實就是官方自己封裝了一些中間件。

當然我們也可以進行對endpoint自我的調(diào)整,因為可能使用不同的模板引擎:

從上面得到一個推薦的中間件注冊來看,認證和授權(quán)在靜態(tài)文件之后,那么我們知道我們的資源時需要授權(quán)來保護的。

那么如何保護靜態(tài)資源呢?這后面會有專門的一章實踐一下,看下是什么原理。

好的,那么看一下我們?nèi)绾巫远x中間件吧,也就是實踐一下下面這種圖。


Middleware1

Middleware3

擴展方法:

加入中間件隊列:

request 順序


response 順序

這其實就是一種職責鏈模式,每個中間件確定是否該需求是否要下一級處理,同樣會產(chǎn)生一個處理回調(diào)。

本文轉(zhuǎn)載自葡萄園:https://www.cnblogs.com/aoximin/p/13576479.html



Asp .net core 中間件的評論 (共 條)

分享到微博請遵守國家法律
明水县| 平度市| 深圳市| 洱源县| 洛川县| 什邡市| 丰都县| 个旧市| 巴青县| 贵阳市| 蕲春县| 泉州市| 桐梓县| 龙里县| 汉中市| 清涧县| 百色市| 绥化市| 延长县| 重庆市| 怀远县| 策勒县| 英山县| 北川| 大邑县| 丹东市| 洛阳市| 张北县| 天全县| 洛浦县| 贵港市| 德令哈市| 揭东县| 博爱县| 隆尧县| 霍山县| 托克逊县| 芒康县| 儋州市| 同德县| 清丰县|