1. 程式人生 > >Asp.net core 中間件簡單應用

Asp.net core 中間件簡單應用

tar 處理 分享 val tin mvc values 管道 esc

  Asp.net core中間件 ,處理http請求和響應的中間組件,對比起asp.net ,asp.net core 管道機制,可以說是帥氣十足,簡單直接。下面是通過中間件對一個請求的url 指定路由

  1. 新建webapi 項目
  2. 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 中間件簡單應用