如何使用 Springfox 2.7.0、2.9.2 将多个值设置为 defaultValue

问题描述

我有一个接受字符串/枚举数组的请求参数,但是当我使用 openapi-generator 验证文档时,它说认值不是“数组”类型。查看 api-docs,我看到它使认值成为一个字符串,而不是一个数组。 如何注释 Springfox swagger 以便我可以列出多个值作为认选择?

@GetMapping
public PagedResults<PortfolioDto> getVisiblePortfolios(
        @ApiParam("List of Visibility")
        @RequestParam(defaultValue = "COMPANY,GLOBAL")  List<PublicVisibility> visibility) { }

生产

      {    
        "name": "visibility","in": "query","description": "List of Visibility","required": false,"type": "array","items": {
          "type": "string","enum": [
            "COMPANY","GLOBAL"
          ]
        },"collectionFormat": "multi","default": "[COMPANY,GLOBAL]","enum": [
          "COMPANY","GLOBAL"
        ]
      }

错误

     -attribute paths.'/api/discover/portfolio'(get).[visibility].default is not of type `array`

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)