• 青海学习十九大精神嵌套页面--青海频道--人民网 2019-06-01
  • 天津举办改善营商环境专题讲座 2019-05-29
  • 法国红酒法国思慕干红葡萄酒750ml【价格 品牌 图片 评论】 2019-05-29
  • 就在今晚!提前预测世界杯开幕式会请几个超模! 2019-05-13
  • 来自报告里的大白话,让你百听不厌 2019-05-07
  • 全国取得专利代理人资格人数达3.7万 2019-05-07
  • VAR技术再抢镜 瑞典队1-0点杀韩国 2019-05-02
  • 井助国:我参与了审判日本战犯 2019-04-28
  • 昌都市图书馆首个全民阅读推广项目结题 2019-04-28
  • “一带一路”倡议下的跨境创业故事 2019-04-24
  • 回复@老老保老张工:计划不要批准?那不还是你自己做主?有必要走形式么? 2019-04-14
  • 端午节当天广州地铁延长1小时收车 2019-04-14
  • 【改革印记——看中国发展】从扫盲到留守儿童关爱:暑期社会实践的变迁 2019-04-10
  • 明星待遇!俄罗斯神猫预测2018世界杯揭幕战胜者 2019-04-09
  • 莫斯科1辆出租车冲进人群 造成7位墨西哥球迷受伤 2019-04-03
  • 排球比赛晋级规则: Swagger 2 显示的是XML而不是JSON格式解决方法

    排球比赛多少局 www.mykud.com 作者: 时间: 2019-05-27 分类: 技术文章 | 0条评论 |

    最近一直在用Yapi+Swagger编写API接口文档的时候,一直没什么问题,但是今天有一个项目却发现不对劲,因为Swagger的JSON无法自动同步到Yapi,导致一直无法在线自动生成最新文档。后来去查看,才发现是因为Swagger生成的JSON外面多了一层<json>XXX</json>,也就是变成了xml类型。

    Swagger 2 显示的是XML而不是JSON格式解决方法

    Swagger 2 显示的是XML而不是JSON格式解决方法

    异常原因(第1种):

    因为Spring MVC默认让服务器在浏览器中呈现XML而不是JSON(其实这个只是表现原因,根本原因是下面第2个原因导致)。

    解决方法:

    @Configuration
    public class InterceptorConfig extends WebMvcConfigurerAdapter {
        @Override
        public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
            MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
            List<MediaType> list = new ArrayList<>();
            list.add(MediaType.APPLICATION_JSON_UTF8);
            list.add(new MediaType("text", "html", Charset.forName("UTF-8")));
            list.add(new MediaType("application", "*+json", Charset.forName("UTF-8")));
            converter.setSupportedMediaTypes(list);
            converters.add(converter);
        }
    }
    


    Swagger 2 显示的是XML而不是JSON格式解决方法

    Swagger 2 显示的是XML而不是JSON格式解决方法

    其实你按照上面的做法处理,基本上可以解决问题,但是如果你仔细看,就会发现 /v2/api-docs?group=oneid 接口返回的 content-type 却是text/html,如果你想彻底解决问题,那么就看第2种方法。

    异常原因(第2种):

    真实原因是项目里面使用了 jackson-dataformat-xml 依赖包,导致项目被默认改成xml类型输出。

    解决方法:

    File——>Project Structure——>Libraries——>找到“jackson-dataformat-xml”把它删除引用即可。删除之后,就彻底完事了~~并不需要添加第1种方法的代码,仅仅是删除引用就行。如果你不能删除引用,那就用第1种方法吧!

    写在后面:

    Swagger 2 显示的是XML而不是JSON格式解决方法

    Swagger 2 显示的是XML而不是JSON格式解决方法

    如果你们发现,按照上面2种方法做了之后,swagger这边全都正常了,但是Yapi那边无法同步接口数据,请检查你们的API注解,一般都是因为注解写错了,最常见的就是注解里面有JSON字符串,但是没有转义,然后一直报错。解决方法就是转义~~如上图~~

    All by flydoos 2019-05-27

    本文采用 CC协议 发布,转载请注明:转载自 排球比赛多少局

    本文链接地址://www.mykud.com/?p=29985

    发表评论

    ?
    微软MSDN资源免费订阅,MSDN 我告诉你
  • 青海学习十九大精神嵌套页面--青海频道--人民网 2019-06-01
  • 天津举办改善营商环境专题讲座 2019-05-29
  • 法国红酒法国思慕干红葡萄酒750ml【价格 品牌 图片 评论】 2019-05-29
  • 就在今晚!提前预测世界杯开幕式会请几个超模! 2019-05-13
  • 来自报告里的大白话,让你百听不厌 2019-05-07
  • 全国取得专利代理人资格人数达3.7万 2019-05-07
  • VAR技术再抢镜 瑞典队1-0点杀韩国 2019-05-02
  • 井助国:我参与了审判日本战犯 2019-04-28
  • 昌都市图书馆首个全民阅读推广项目结题 2019-04-28
  • “一带一路”倡议下的跨境创业故事 2019-04-24
  • 回复@老老保老张工:计划不要批准?那不还是你自己做主?有必要走形式么? 2019-04-14
  • 端午节当天广州地铁延长1小时收车 2019-04-14
  • 【改革印记——看中国发展】从扫盲到留守儿童关爱:暑期社会实践的变迁 2019-04-10
  • 明星待遇!俄罗斯神猫预测2018世界杯揭幕战胜者 2019-04-09
  • 莫斯科1辆出租车冲进人群 造成7位墨西哥球迷受伤 2019-04-03
  • 牛牛bank同洲电子 钻石帝国APP 3d试机号组三开奖对应码 喜哥一波中特 拳皇命运夏尔米壁纸 perfect多特蒙德官网 熊出没之丧尸来袭 柏斯波利斯对塔什干棉农比分预测 齐天大圣返水 末平分野1手在线客服 深圳皇冠体育中心羽毛球馆 天龙八部手游峨眉宝石搭配 一波中特猪在家打一肖 cf手游新年广场bug 六合图库护民 甘肃快3一定牛推荐