首先感谢这位老哥的这篇,如果不是他我都忘了我还有个消息转换器
Knife4j文档请求异常(基于SpringBoot3,查找原因并解决)-CSDN博客
适用情况:
首先是网页肯定是请求异常
通过浏览器抓包可以看到请求是正常发出去的
但响应数据异常
控制台无报错,但浏览器控制台报错
如果满足以上要求那么,请往下看,如果不是请另寻他处
解决方式
没有报错说明配置是完全没有问题,浏览器抛出来的异常是一个json数据解析的异常,因为后端配置了一个消息转换器,所以返回给前端的数据都会被影响,只是这个的影响比较大
解决方法就是将消息转换器延后
@Override
protected void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
MappingJackson2HttpMessageConverter messageConverter = new MappingJackson2HttpMessageConverter();
messageConverter.setObjectMapper(new JacksonObjectMapper());
// 我这里只把转换器延后了一位,具体根据实际情况调整,延后太多会倒是转换器不生效
converters.add(1,messageConverter);
}