미들웨어는 애플리케이션 파이프라인에 조립된 소프트웨어 구성 요소입니다. 요청과 응답을 처리합니다.
각 구성 요소는 요청을 다음 구성 요소로 전달할지 여부를 선택합니다. 파이프라인이며 다음 구성요소 전후에 특정 작업을 수행할 수 있습니다. 파이프라인에서 호출됩니다.
맵 확장은 파이프라인 분기에 대한 규칙으로 사용됩니다.
Map 확장 방법은 요청된 대리인을 기반으로 요청 대리인을 일치시키는 데 사용됩니다. path.Map은 단순히 개별 미들웨어를 구성하기 위한 경로와 함수를 허용합니다. 관로.
아래 예에서는 기본 경로가 /maptest인 모든 요청이 처리됩니다. HandleMapTest 메서드에 구성된 파이프라인을 통해.
private static void HandleMapTest(IApplicationBuilder app){ app.Run(async context =>{ await context.Response.WriteAsync("Map Test Successful"); }); } public void ConfigureMapping(IApplicationBuilder app){ app.Map("/maptest", HandleMapTest); }
경로 기반 매핑 외에도 MapWhen 메서드는 조건자 기반 매핑도 지원합니다.
뛰어난 유연성으로 별도의 파이프라인을 구축할 수 있는 미들웨어 포크 fashion.Func
private static void HandleBranch(IApplicationBuilder app){ app.Run(async context =>{ await context.Response.WriteAsync("Branch used."); }); } public void ConfigureMapWhen(IApplicationBuilder app){ app.MapWhen(context => { return context.Request.Query.ContainsKey("branch"); }, HandleBranch); app.Run(async context =>{ await context.Response.WriteAsync("Hello from " + _environment); }); }
지도는 중첩될 수도 있습니다
app.Map("/level1", level1App => { level1App.Map("/level2a", level2AApp => { // "/level1/level2a" //... }); level1App.Map("/level2b", level2BApp => { // "/level1/level2b" //... }); });
위 내용은 C# ASP.NET Core 파이프라인에 미들웨어를 추가할 때 'Map' 확장을 사용하는 방법은 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!