百度到的基本上就是讀取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了。