對于業務層的程式的緻命錯誤,我們一直的做法就是直接抛出指定的異常,讓程式去終斷,這種做法是對的,因為如果一個業務出現了緻命的阻塞的問題,就沒有必要再向上一層一層的傳回了,但這時有個問題,直接抛異常,意味着伺服器直接500了,前端如何去顯示,或者如果你是API的服務,如果為前端傳回,如果是500,那直接就挂了,哈哈!
下面是在MVC環境下優化的全局異常捕獲代碼(非API)
如果業務層有問題,直接就throw了
然後頁面後,故意讓它抛出異常,我們看一下頁面響應的結果

事實上,對于伺服器來說,它是200,正常傳回的,而對不業務子產品來說,它的狀态是個500,呵呵,這點要清楚.
感謝各位閱讀!