后端:
统一异常处理器
@ControllerAdvice
public class DefaultExceptionHandler {
@ExceptionHandler(value = Exception.class)
@ResponseStatus(HttpStatus.BAD_REQUEST)
@ResponseBody
public ErrorResponse errorResponse(Exception exception) {
return new ErrorResponse(exception.getMessage());
}
/**
* 没有权限 异常
* <p/>
* 后续根据不同的需求定制即可
*/
@ExceptionHandler({NullPointerException.class})
@ResponseStatus(HttpStatus.UNAUTHORIZED)
public ModelAndView processUnauthenticatedException(NativeWebRequest request, Exception e) {
ModelAndView mv = new ModelAndView();
mv.addObject("exception", e);
mv.setViewName("error/unauthorized");
return mv;
}
public class ErrorResponse {
private String message;
public ErrorResponse(String message) {
this.message = message;
}
public String getMessage() {
return message;
}
}
}
Controller:
@ResponseBody
@RequestMapping(method = RequestMethod.GET, value = "status",produces = {"application/json"})
public Test statusTest(Test t) throws Exception {
//System.out.println(t);
int a= 0/0;
return new Test();
}
前端
其余code处理方式一致