.NET
Middleware
在ASP.NET Core使用Middleware取得 HTTP Request與Response資訊
2019/12/23 11:19:15
3
2469
Middleware概念
從ASP.NET Core的官方說明文件中,可以得知Middleware是個可以像管線(pipeline)般串起應用程式的軟體,所有的Request與Response都會經過,且多個Middleware可接連呼叫,如下圖:
Middleware基本結構
Middleware基本必須包含以下:
- 有RequestDelegate類型參數的公用建構函式
- 包含名為Invoke或InvokeAsync的公用方法,此方法必須回傳Task並接受HttpContext類型的第一個引數
建立Middleware並註冊
建立一個.NET Core專案後,首先建立一個LoggingMiddleware.cs檔案,並同時建立基本結構
在Startup.cs以UseMiddleware方式進行註冊
在Middleware上讀取Request與Response
建立FormatRequest方法來讀取HTTP Request
建立FormatResponse方法來讀取HTTP Response
在Invoke呼叫FormatRequest與FormatResponse方法
測試
建立一個Web API,傳入LoginParamModel,裡面包含Account與Password,並且回傳ReturnCode、ReturnMessage及ReturnData
取得結果
參考資料