日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

asp.net core 自定义异常处理中间件

發布時間:2023/12/4 asp.net 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 asp.net core 自定义异常处理中间件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Intro

在 asp.net core 中全局異常處理,有時候可能不能滿足我們的需要,可能就需要自己自定義一個中間件處理了,最近遇到一個問題,有一些異常,不希望記錄錯誤日志,目前主要是用戶請求取消導致的?TaskCanceledException?和?OperationCanceledException?異常。因為我的 ERROR 級別的日志會輸出到 Sentry,sentry的異常會自動發郵件提醒,如果是一些沒必要的錯誤,自然不需要記錄錯誤日志,于是就想自定義一個異常處理中間件,自己處理異常,不將異常處理直接交給 asp.net core 的異常處理。

請求取消

請求取消導致的異常:

asp.net core 引入了?HttpContext.RequestAborted?來監聽用戶取消請求(實際測試下來,并不是每次都會觸發,還沒搞清楚怎么100%的觸發),你可以使用?HttpContext.RequestAborted?來在用戶取消請求的時候中斷后臺邏輯的處理,避免處理一些不必要的業務,下面給出一個使用示例,示例源碼
,更多詳細信息可以參考 圣杰的這篇?中斷請求了解一下

異常處理中間件

異常處理中間件源碼:

可以通過配置?CustomExceptionHandlerOptions?來實現自定義的異常處理邏輯,默認請求取消會記錄一條 Information 級別的日志,其他異常則會記錄一條 Error 級別的錯誤日志

你可以通過下面的示例來配置遇到請求取消異常的時候什么都不做

Reference

  • https://www.jianshu.com/p/9988f2a27f8d

  • https://github.com/WeihanLi/ActivityReservation/blob/dev/ActivityReservation.API/ReservationPlaceController.cs

原文地址:https://www.cnblogs.com/weihanli/p/custom-exception-handler-for-aspnetcore.html


.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?

總結

以上是生活随笔為你收集整理的asp.net core 自定义异常处理中间件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。