我最近将我们的项目升级到了Spring Boot2,这个App只是一个Rest API。现在,我们所有的400和500响应都以html而不是json的形式返回。
我正在定义一个自定义的ErrorAttributes,就像文档上说的那样。
@Configuration
public class WebConfig implements WebMvcConfigurer {
...
@Bean
public ErrorAttributes errorAttributes() {
return new DefaultErrorAttributes() {
@Override
public Map<String, Object> getErrorAttributes(WebRequest webRequest,
boolean includeStackTrace) {
Map<String, Object> errorAttributes = super.getErrorAttributes(webRequest, true);
return errorAttributes;
}
};
}
...
我想在本地调试这个问题,但我在代码中找不到Spring Boot决定为错误添加JSON响应的地方。这里的文档:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-error-handling说:
对于机器客户端,它会生成一个
响应,其中包含错误、HTTP状态和异常消息的详细信息。
我在想,我必须在本地定义一个Bean,这会导致在Spring Boot Auto configuration中不能正确地配置它。
https://stackoverflow.com/questions/51596762
复制相似问题