asp.net core過濾器記錄響應對象

百度到的基本上就是讀取response.body的流。然後記錄完了之後,把流的index重新復位,這樣也太麻煩了。


其實asp.net core團隊肯定已經考慮到了這種需求,比如記錄請求響應日誌。給響應數據過濾這類的。

在OnActionExecuted的ActionExecutedContext裏面有個result。在調試模式下,就可以看到這個Result隨着響應對象的不一致,是不同的對象

 
if (context.Result is JsonResult)
                {
                    var value = ((JsonResult)context.Result).Value;
                }
                if (context.Result is ObjectResult)
                {
                    var value = ((ObjectResult)context.Result).Value;
                }
 

可以直接獲取自己需要的返回對象,然後做處理就ok了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章