我创建了一个springboot应用程序,它在.../api/myEndpoints中包含一些Rest API端点...以及用户可以与之交互的一些UI表单的百万美元模板.
自从我添加了一个errorController:
@Controller
@RequestMapping("/error")
public class ErrorController {
@RequestMapping(method = RequestMethod.GET)
public String index(Model model) {
return "error";
}
}
Run Code Online (Sandbox Code Playgroud)
每当我的RestControllers中抛出异常时,我会收到一个包含单词"error"的空白网站.这可能对网络前端有意义,但不适合我的api.对于API,我希望spring输出标准的JSON结果,例如:
{
"timestamp": 1473148776095,
"status": 400,
"error": "Bad request",
"exception": "java.lang.IllegalArgumentException",
"message": "A required parameter is missing (IllegalArgumentException)",
"path": "/api/greet"
}
Run Code Online (Sandbox Code Playgroud)
当我从ErrorController中删除索引方法时,我总是收到JSON输出.我的问题是:是否有可能只为所有api urls(../ api/*)排除自动重定向到/ error?
非常感谢.