如何以不同的方式处理Spring MVC中HTML和JSON请求的异常
2022-09-01 10:00:06
我在Spring 4.0.3中使用以下异常处理程序来拦截异常并向用户显示自定义错误页面:
@ControllerAdvice
public class ExceptionHandlerController
{
@ExceptionHandler(value = Exception.class)
public ModelAndView handleError(HttpServletRequest request, Exception e)
{
ModelAndView mav = new ModelAndView("/errors/500"));
mav.addObject("exception", e);
return mav;
}
}
但现在我想要对JSON请求进行不同的处理,以便在发生异常时获得此类请求的JSON错误响应。目前,上述代码也是由JSON请求(使用标头)触发的,JavaScript客户端不喜欢HTML响应。Accept: application/json
如何以不同的方式处理 HTML 和 JSON 请求的异常?