HostFilteringMiddleware:過濾主機名,強制請求提供有效主機名
HttpMehodOverrideMiddleware:改寫httpMethod
ForwardedHeadersMiddleware:如果請求再到達最終服務器之前經過多方轉發導致HttpContext上下文無法反應出請求的最初發起者,可以使用此中間件解決
UsePathBaseMiddleware:幫我們設置當前應用的基礎路徑
MapMiddleware、MapWhenMiddleware:提供了最簡單與最直接的路由實現
HostFilteringMiddleware
中間件定義再Microsoft.AspNetCore.HostFiltering
Nuget包中
對請求的主機名驗證,我們可以指定一組有效的主機名。
services.AddHostFiltering(options =>
{
options.AllowedHosts.Add("127.0.0.1");
});
app.UseHostFiltering();
HostFilteringOptions
AllowedHosts允許訪問的Host主機
AllowEmptyHosts是否允許請求頭Host的值為空訪問 默認為true
IncludeFailureMessage 返回錯誤信息,默認為true
HttpMehodOverrideMiddleware
可以改寫HTTP方法,由於一些網絡設置、客戶端軟件或服務器限制,一些場景下只允許發送或接受GET、POST請求,這就要求服務端在路由之前改寫當前請求的HTTP方法
ForwardedHeadersMiddleware
用來改寫客戶端IP地址、主機名、協議類型(HTTP、HTTPS)