DefaultFilesMiddleware中間件的目的在于將目標(biāo)目錄下的默認(rèn)文件作為響應(yīng)內(nèi)容。我們知道,如果直接請求的就是這個默認(rèn)文件,那么前面介紹的StaticFileMiddleware中間件會將這個文件響應(yīng)給客戶端。如果我們能夠?qū)⑨槍δ夸浀恼埱笾囟ㄏ虻竭@個默認(rèn)文件上,一切就迎刃而解了。實際上DefaultFilesMiddleware中間件的實現(xiàn)邏輯很簡單,它采用URL重寫的形式修改了當(dāng)前請求的地址,即將針對目錄的URL修改成針對默認(rèn)文件的URL。[本文已經(jīng)同步到《ASP.NET Core框架揭秘》之中]
我們照例先來看看DefaultFilesMiddleware類型的定義。和其他兩個中間件類似,DefaultFilesMiddleware的構(gòu)造就有一個IOptions<DefaultFilesOptions>類型的參數(shù)來指定相關(guān)的配置選項。由于DefaultFilesMiddleware中間件本質(zhì)上依然體現(xiàn)了請求路徑與某個物理目錄的映射,所以DefaultFilesOptions依然派生于SharedOptionsBase。DefaultFilesOptions的DefaultNames屬性包含了預(yù)定義的默認(rèn)文件名,我們可以看到它默認(rèn)包含四個名稱(default.htm、default.html、index.htm或者index.html)。
1: public class DefaultFilesMiddleware
2: {
3: public DefaultFilesMiddleware(RequestDelegate next, IHostingEnvironment hostingEnv, IOptions<DefaultFilesOptions> options);
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26