欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

ASP.NETCore如何設(shè)置中間件-創(chuàng)新互聯(lián)

這篇文章主要介紹ASP.NET Core如何設(shè)置中間件,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

臨潼ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

Asp.Net Core-中間件


在這一章,我們將了解如何設(shè)置中間件。中間件技術(shù)在 ASP.NET Core中控制我們的應(yīng)用程序如何響應(yīng) HTTP 請求。它還可以控制應(yīng)用程序的異常錯誤,這是一個在如何進(jìn)行身份驗(yàn)證和授權(quán)用戶執(zhí)行特定的操作的關(guān)鍵。

  • 中間件是組裝成應(yīng)用的管道來處理請求和響應(yīng)的軟件組件。

  • 每個組件可以選擇是否要在管道中將請求傳遞到下一個組件,并可以在管道中執(zhí)行某些操作之前和之后的任務(wù)。

  • Request委托用于構(gòu)建請求管道。Request委托用來處理每個HTTP請求。

  • 每件中間件在 ASP.NET Core都是一個對象,并且每一塊有非常具體、 專注和有限的作用。

  • 最終,我們需要很多的中間件為應(yīng)用程序提供適當(dāng)?shù)男袨椤?/p>

現(xiàn)在讓我們假設(shè)我們想將每個對我們應(yīng)用程序的請求都記錄日志。

  • 在這種情況下,我們安裝到應(yīng)用程序中的第一塊中間件是一個日志組件。

  • 這個日志程序可以看到一切傳入的請求,然后該中間件只是記錄一些信息,然后傳遞這個請求下一個塊中間件。

ASP.NET Core如何設(shè)置中間件

  • 中間件是以一系列的組件出現(xiàn)在這個處理管道中。

  • 我們安裝到應(yīng)用程序的下一個中間件是一個授權(quán)組件。

  • 一個組件可能是尋找特定cookie或訪問HTTP標(biāo)頭中的令牌。

  • 如果授權(quán)組件發(fā)現(xiàn)一個令牌,它允許請求繼續(xù)。

  • 如果不是,授權(quán)組件本身可能會響應(yīng)請求的HTTP錯誤代碼或?qū)⒂脩糁囟ㄏ虻降卿涰撁妗?/p>

  • 否則,授權(quán)組件將請求傳遞給下一個路由器的中間件。

  • 一個路由器查看URL,并確定下一步的行動。

  • 路由器是在做一些回應(yīng),如果路由器沒有找到任何回應(yīng),路由器本身可能會返回404 Not Found錯誤。

 案例


現(xiàn)在讓我們通過一個簡單的例子來理解更多關(guān)于中間件的知識。我們通過使用我們的啟動類的Configure方法來配置中間件組件。

using Microsoft.AspNet.Builder; 
using Microsoft.AspNet.Hosting; 
using Microsoft.AspNet.Http; 
using Microsoft.Extensions.DependencyInjection; 
using Microsoft.Extensions.Configuration; 
namespace FirstAppDemo { 
  public class Startup { 
   public Startup() { 
     var builder = new ConfigurationBuilder() 
      .AddJsonFile("AppSettings.json"); 
     Configuration = builder.Build(); 
   } 
   public IConfiguration Configuration { get; set; } 
    
   // This method gets called by the runtime. 
   // Use this method to add services to the container. 
   // For more information on how to configure your application, 
   // visit http://go.microsoft.com/fwlink/?LinkID=398940 
   public void ConfigureServices(IServiceCollection services) { 
   } 
    
   // This method gets called by the runtime. 
   // Use this method to configure the HTTP request pipeline. 
   public void Configure(IApplicationBuilder app) { 
     app.UseIISPlatformHandler(); 
     
     app.Run(async (context) => { 
      var msg = Configuration["message"]; 
      await context.Response.WriteAsync(msg); 
     }); 
   } 
   // Entry point for the application. 
   public static void Main(string[] args) => WebApplication.Run<Startup>(args); 
  } 
}

Configure()方法內(nèi),我們將調(diào)用IApplicationBuilder接口的擴(kuò)展方法來添加中間件。


 默認(rèn)情況下在一個新的空項(xiàng)目有兩塊中間件-

IISPlatformHandler

Middleware registered with app.Run

IISPlatformHandler


IISPlatformHandler允許我們使用Windows身份驗(yàn)證。它將著眼于每個傳入請求,看看是否有任何Windows身份信息相關(guān)的請求,然后調(diào)用下一個塊中間件。

Middleware registered with app.Run


在這種情況下一個中間件在app.Run中注冊的中間件。Run方法允許我們傳入另一種方法,我們可以使用它來處理每一個響應(yīng)。Run方法不是你經(jīng)常會看到的,我們可以稱它為一個中間件的終端。

你注冊運(yùn)行的中間件將永遠(yuǎn)不會有機(jī)會調(diào)用另一個中間件,它能做的就是接收請求,便要產(chǎn)生某種反應(yīng)。

你也訪問到一個響應(yīng)對象,你可以在響應(yīng)對象中添加一些字符串。

如果你想在app.Run之后注冊另一個中間件,這段中間件將永遠(yuǎn)不會被調(diào)用,因?yàn)镽un方法是一個中間件的終端。它不會調(diào)用下一個塊中間件。

如何添加一個中間件


讓我們著手進(jìn)行以下步驟來添加另一個中間件 ?

步驟1?右鍵單擊項(xiàng)目并選擇Manage NuGet Packages。

步驟2?搜索 Microsoft.aspnet.diagnostics,此特定的軟件包包含許多不同種的中間件,我們可以使用。

ASP.NET Core如何設(shè)置中間件

步驟3?如果該包沒有安裝在您的項(xiàng)目中,那選擇安裝這個包。

步驟4?現(xiàn)在讓我們在Configure()方法調(diào)用app.UseWelcomePage中間件。

// This method gets called by the runtime. 
// Use this method to configure the HTTP request pipeline. 
public void Configure(IApplicationBuilder app) { 
  app.UseIISPlatformHandler(); 
  app.UseWelcomePage(); 
  
  app.Run(async (context) => { 
   var msg = Configuration["message"]; 
   await context.Response.WriteAsync(msg); 
  });

步驟 5 ? 運(yùn)行您的應(yīng)用程序,您將看到以下的歡迎屏幕。

ASP.NET Core如何設(shè)置中間件

這個歡迎屏幕可能不是那么有用。

步驟6?讓我們試試別的東西,可能是更有用的,而不是使用歡迎頁面,我們將使用RuntimeInfoPage。

// This method gets called by the runtime. 
// Use this method to configure the HTTP request pipeline. 
public void Configure(IApplicationBuilder app) { 
  app.UseIISPlatformHandler(); 
  app.UseRuntimeInfoPage(); 
  
  app.Run(async (context) => { 
   var msg = Configuration["message"]; 
   await context.Response.WriteAsync(msg); 
  }); 
}

第 7 步 ? 保存您的 Startup.cs 頁面并刷新您的瀏覽器,你會看到下面的頁面。

ASP.NET Core如何設(shè)置中間件

這個 RuntimeInfoPage 是中間件,將只響應(yīng)一個特定的 URL 的請求。如果傳入的請求與該 URL 不匹配,這個中間件只是讓請求傳遞到下一件中間件。該請求將通過 IISPlatformHandler 中間件,然后轉(zhuǎn)到 UseRuntimeInfoPage 中間件。它不會創(chuàng)建響應(yīng),所以它會轉(zhuǎn)到我們的應(yīng)用程序。運(yùn)行并顯示該字符串。

步驟8?我們在URL結(jié)尾添加“ runtimeinfo”?,F(xiàn)在,您將看到一個頁面,該頁面是由中間件運(yùn)行時信息頁面。

ASP.NET Core如何設(shè)置中間件

你將看到一個返回頁面,它給你展示了一些關(guān)于你的運(yùn)行時環(huán)境,如操作系統(tǒng)、運(yùn)行時版本,結(jié)構(gòu),類型和您正在使用的所有包的信息。

以上是“ASP.NET Core如何設(shè)置中間件”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁標(biāo)題:ASP.NETCore如何設(shè)置中間件-創(chuàng)新互聯(lián)
鏈接URL:http://aaarwkj.com/article18/ccjjgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航Google、靜態(tài)網(wǎng)站、面包屑導(dǎo)航網(wǎng)頁設(shè)計(jì)公司、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
粉嫩av一区二区三区四区| 国产一区二区日韩一区| 美女高潮呻吟免费观看久久久 | 天天操夜夜操狠狠操91| 成人黄色三级免费网站| 精品国产91高清在线观看| 精品在欧美一区二区少妇| 最新免费观看男女啪啪视频| 亚洲国产精品一区一区| 视频一二区免费在线观看| 日韩中文字幕在线二区| 国产极品嫩模在线观看91| 国产一区二区精品久久岳| 一区二区三区人妻系列| 国产午夜福利片新视觉| 色91精品在线观看剧情| 欧美日韩一级一区二区三区| 亚洲美女插入av网络导航| 久久久精品免费中文视频| 久久综合给合综合久久| 老湿机午夜在线免费观看| 亚洲国产视频不卡一区| 亚洲香蕉av在线一区二区三区| 性感美女国产av一区二区三区| 国产97精品在线播放| 国产又粗又长又大又长| 久久精品国产av极品| 久久人妻制服乱码中文字幕| 国产精品无卡无在线播放| 蜜臀视频网站在线观看| 欧美黄片免费在线视频| 国产av手机自拍看片| 精品毛片av一区二区三区| 日本熟女视频中文字幕| 中文字幕有码在线朋友| 免费视频观看在线一区二区三区| 成人一区二区三区播放| 韩国三级网站在线观看视频| 成年视频免费观看视频| 天天操夜夜操夜夜操精品| 久久偷拍女生厕所尿尿|