2
我正在使用Spring MVC和Spring Boot實現Java web應用程序。使用Spring Boot,如何分別處理正常請求和ajax請求之間的異常
我想創建一個自定義錯誤頁面(404,500錯誤),我試圖從這裏使用的解決方案: https://stackoverflow.com/a/27393578/2148445
並能正常工作。但是,它攔截了所有404/500錯誤,即使是我的ajax請求。我的web應用程序基於ajax請求,所以當我調用API時,它會返回自定義錯誤頁面而不是json響應。
我想:
正常請求時>>轉到自定義錯誤頁面。
當ajax請求>>返回錯誤響應作爲json對象。
我試圖尋找其他方式,但我不能得到很好的解決辦法爲止。 我試過使用@ExceptionHandler
,但我的同事說它會覆蓋Spring引導的。
有沒有辦法解決這個問題?
謝謝你的幫助。
你可以粘貼你的ajax監聽器類嗎? – chengpohi
我覺得這有點棘手。最好的辦法是創建一個控制器來處理錯誤,向它注入'HttpServletRequest',並根據請求的路徑返回JSON或重定向到錯誤視圖。 –
這似乎是相關的:http://stackoverflow.com/questions/29703903/spring-boot-error-controller-to-handle-either-json-or-html –