spring boot整合swagger时,打开swagger-ui中文出现乱码

spring boot整合swagger时,打开swagger-ui中文出现乱码,第1张

问题衫敬记录:

本例采用或数慎的swagger版本及相关组件

问题出现原因:

加入了Shiro后就出现了乱码,可能是在加入Shiro的时候编码选择错了,网上介绍的办法大多是在setting设置以及对tomcat的设置,但是还是不得,在毕银先不探讨Shiro倒置的情况下,找到了如下的解决办法

在config类中,继承自WebMvcConfigurationSupport类,重写以下方法:

注意:不要直接在swagger配置类直接继承WebMvcConfigurationSupport,不然会出现

No mapping for GET /swagger-ui.html 的报错

springboot项目集成Swagger后,

请求接口返回的json数据中文乱码了,

不集成的时候正铅团明或并常?springboot项目集成Swagger后,请求接口返回的json数据中文乱码槐告了,不集成的时候正常?

在使用SpringBoot中配置Swagger2的时候,出现

Unable to infer base url. This is common when using dynamic servlet registration or when the API is behind an API Gateway. The base url is the root of where all the swagger resources are served. For e.g. if the api is available at http://example.org/api/v2/api-docs then the base url is http://example.org/api/ . Please enter the location manually:

引用来自 https://github.com/springfox/springfox/issues/1996#issuecomment-335155187

4.但是在我的项目中,发现是我使用Spring的ResponseBodyAdvice全局返回再处理的一个类,本意是为所有返回JSON数据统一添加“状态=succuess”等信息,没想到该实现影响了Swagger的使用,会导致swagger返回的JSON数据格式和期望的不一致,故swagger报错。解决方法在该接口实现类上面的@ControllerAdvice 注解限制接口巧斗的扫描包即可避免。

5.在排查该问题时,假设你的swagger-ui访问路径是 http://localhost:8080/swagger-ui.html, 可以先直接访问 http://localhost:8080/v2/api-docs, 查看swagger是否正确获取到了JSON格式的数据,且JSON格式数据是否为类似以下格式,如果不对则可能是因为别的返回预处理接口对陪宽陪数据进行了处理,导致swagger无法芦蠢获取到正确的数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/8037476.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存