.Net Core中間件中IApplicationBuilder.Map()的用法


Map 擴展方法用於匹配基於請求路徑的請求委托。Map 只接受路徑,並配置單獨的中間件管道的功能

在StartUp.Config()方法里使用

第一種用法:

app.Map("/api/MessageRelease", new Controllers.MessageRelease().Map);

第二種用法:

app.MapWhen(context => {
         return context.Request.Query.ContainsKey("MessageRelease");
}, new Controllers.MessageRelease().Map);

第一種和第二種的區別在於,篩選請求的方式不同,第一種只要是請求“/api/MessageRelease”都會進入到Controllers.MessageRelease().Map方法,而第二種是只要請求里面包含“MessageRelease”就會進入到Controllers.MessageRelease().Map方法

不管那種方式,只要使用了 Map,每個請求所匹配的路徑段將從 HttpRequest.Path 中移除,並附加到 HttpRequest.PathBase 中。

而Controllers.MessageRelease().Map()方法里面會再使用app.Use(),相當於在處理請求之前,先對請求篩選到指定委托


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM