|
|
@@ -71,6 +71,13 @@ public class GlobalExceptionHandler {
|
|
|
apiCode = GatewayApiCode.CMS_USER_NO_PERMISSION;
|
|
|
}
|
|
|
|
|
|
+ if (e instanceof org.springframework.web.bind.MissingServletRequestParameterException) {
|
|
|
+ message = "缺少必填参数:" + ((org.springframework.web.bind.MissingServletRequestParameterException) e).getParameterName();
|
|
|
+ } else if (e instanceof org.springframework.web.method.annotation.MethodArgumentTypeMismatchException) {
|
|
|
+ message = "参数格式不正确:" + ((org.springframework.web.method.annotation.MethodArgumentTypeMismatchException) e).getName();
|
|
|
+ } else if (e instanceof org.springframework.http.converter.HttpMessageNotReadableException) {
|
|
|
+ message = "请求体格式不正确,请检查 JSON 和字段类型";
|
|
|
+ }
|
|
|
if (apiCode != null) {
|
|
|
return GatewayResponse.FAIL.newBuilder().buildGatewayCode(apiCode).toResult();
|
|
|
}
|
|
|
@@ -115,7 +122,7 @@ public class GlobalExceptionHandler {
|
|
|
Set<String> errorInfoSet = new TreeSet<String>();
|
|
|
for (FieldError fieldError : fieldErrorList) {
|
|
|
// 遍历错误字段信息
|
|
|
- errorInfoSet.add(fieldError.getDefaultMessage());
|
|
|
+ errorInfoSet.add(fieldError.getField() + ":" + (fieldError.isBindingFailure() ? "格式或类型不正确" : fieldError.getDefaultMessage()));
|
|
|
}
|
|
|
|
|
|
StringBuilder sbf = new StringBuilder();
|