我正在使用spring-boot-starter-web,我想更改上传请求映射返回的消息:
@RequestMapping("/upload")
public @ResponseBody String upload(@RequestParam("file") MultipartFile file){...}
我没有找到HTTP / 1.1 404找不到的是:
{"timestamp":1462064481371,"status":404,"error":"Not Found",
"exception":"org.springframework.web.multipart.support.MissingServletRequestPartException",
"message":"Required request part 'file' is not present","path":"/upload"}
我想更改“必需的请求部分'文件'不存在”,例如“缺少参数。
是否有一种简单的方法可以通过注释完成此操作?
如果可能的话,我也想抑制异常信息。
谢谢。
答案 0 :(得分:0)
好的,到目前为止最好的解决方案是重写整个ResponseBody:
@ExceptionHandler(MissingServletRequestPartException.class)
public @ResponseBody Map<String,String> handleMissingServletRequestPartException(Exception exception, HttpServletResponse response) {
Map<String,String> errorMap = new HashMap<String,String>();
errorMap.put("message","missing parameter");
response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
return errorMap;
}
...
{&#34; message&#34;:&#34;缺少参数&#34;}
答案 1 :(得分:0)
此异常由ResponseEntityExceptionHandler处理。 您可以对此进行扩展并覆盖方法handleMissingServletRequestPart。这可能是这样的例子:
module.exports.component = TodoComponent