在 ABP 開發過程中,這個錯誤是必然會遇到。該錯誤的中文版“對不起,在處理您的請求期間,產生了一個服務器內部錯誤”
這是系統在發生沒有處理的內部錯誤時拋出的默認錯誤信息,其目的是友好的向用戶展示異常信息,避免看到一堆報錯懵逼。
開發人員發現這樣的錯誤時,就去分析日志來定位並解決問題。日志文件一般在 Host/logs 目錄下的 *.txt 文件里。
時常遇到有人問怎么將錯誤信息返回到前端,所以這里就把設置方法貼出來,供大家參考。
找到一個繼承 AbpModule 的類,通過下面的設置就可以實現將錯誤信息返回。
Configuration.Modules.AbpWebCommon().SendAllExceptionsToClients = false;//向前端返回完整錯誤日志
SendAllExceptionsToClients 為 true 時就會直接返回具體的錯誤信息。也可以通過當前運行環境來自動判斷,避免發布到生產環境時讓用戶懵逼。
#if DEBUG
Configuration.Modules.AbpWebCommon().SendAllExceptionsToClients = true;
#else
Configuration.Modules.AbpWebCommon().SendAllExceptionsToClients = false;
#endif