如何将swagger设置为正确编码参数列表?例句:我有一个服务,它接收以下格式的整数列表:
http://server/api/resource?id=1&id=2&id=3然而,在我的swagger-ui文档中,参数显示为一个单一的文本字段,它需要一个逗号分隔的列表。如果以这种格式提供参数,则从服务(使用RestEasy编写)获得以下响应:
无法从http请求中提取参数:公共companyname.methodname(java.util.List)“的javax.ws.rs.QueryParam(\"id\")值为'1,2,3‘
swagger规范是使用一组maven插件生成的: swagger-jersey-jaxrs、swagger-注释、swagger-core和swagger-jaxrs。主要的swagger规范json是在应用程序启动时通过com.wordnik.swagger.jaxrs.config.BeanConfig生成的,注入到了我的spring上下文中。
在这一点上,我显然被塞了进去。如果有人能提供任何想法,我会非常感激的。
提前感谢!维尼修斯
发布于 2014-12-12 18:36:56
对重复查询参数名称的支持没有很好地定义,并使用Swagger1.2和相应的Swagger实现。
要正确地支持它,您需要迁移到Swagger2.0和最新版本的Swagger (当前主版)。
Swagger-Core对Swagger2.0的支持目前正在开发中,但即将发布里程碑式的版本。您可以从sonatype获取快照,也可以从github存储库的develop_2.0分支构建快照。支持Swagger2.0的Swagger版本是1.5。
对它的支持是通过collectionFormat属性完成的,其值为multi。
https://stackoverflow.com/questions/27444975
复制相似问题