Asp.net core 中間件簡單應用
阿新 • • 發佈:2017-09-09
tar 處理 分享 val tin mvc values 管道 esc
Asp.net core中間件 ,處理http請求和響應的中間組件,對比起asp.net ,asp.net core 管道機制,可以說是帥氣十足,簡單直接。下面是通過中間件對一個請求的url 指定路由
- 新建webapi 項目
- Startup類中Configure方法中添加處理中間件代碼如下
public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); }
//指定特定請求url 的路由 app.Use(async (context, nextHandler) => { if (context.Request.Path == "/test") { context.Request.Path = "/api/values"; } await nextHandler(); }); app.UseMvc(); }其中 "/api/values"是ValuesController下的路由,如下代碼
[Route("api/[controller]")] public class ValuesController : Controller { // GET api/values [HttpGet] public IEnumerable<string> Get() { return new string[] {"value1", "value2"}; } }
實現功能只需幾行代碼,下面看下結果,用postman輸入請求地址http://localhost:64651/test,結果是返回api/values下的結果,如下圖
Asp.net core 中間件簡單應用