swagger:一个省略号引发的血案

      今天前端同事突然告诉我swagger不能使了,在我更新系统前可以正常使用。

Unable to render this definition

The provided definition does not specify a valid version field.

Please indicate a valid Swagger or OpenAPI version field. Supported version fields are swagger: "2.0" and those that match openapi: 3.0.n (for example, openapi: 3.0.0).

       擦,那得赶紧想办法修理啊。看提示信息一开始我怀疑是swagger版本的问题,但是也不能突然之间就不行了,于是在百度海洋里遨游了一番,说是造成这个错误的原因一般有3点:

1、api中的Controller/Action 请加入[HttpPost]或者 [HTTPGet]

2、api中的Controller中有私有方法(全部写道Service)

3、传入参数模型有问题.

       仔细检查了一番,前两点确定没有问题,那就只剩传入参数模型的问题了,但看了好大会儿也没有发现什么问题,隐约记得昨天自己看的时候swagger还可以正常访问,于是抱着试试看的心态把新加的一个接口controller注释掉,重启后swagger可以正常访问,定位到问题在哪了。

       看了一会儿并没有觉得哪里写的有问题,可事实是这个接口导致swagger不能正常访问,肯定是有问题的。难道是因为

termUnAssignEntitiesReqList 处 example中写了个省略号?修改为

       重启,嘿,可以正常访问了。

       我之前一直以为example就是个String,写成什么格式都没有影响,今天才发现example也有一些约束,比如想展示列表时不要像我这样子写省略号。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值