微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 Swagger 注释为 List<String> 生成语法正确的 JSON 示例

如何解决如何使用 Swagger 注释为 List<String> 生成语法正确的 JSON 示例

我正在使用 springfox-boot-starter。有没有办法正确处理 example 字段的 List<String> 值?

@ApiModelProperty@Schema 都不会产生正确的结果。

import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;

public class MyRequest {
    @ApiModelProperty(dataType = "List",example = "[\"value1-1\",\"value1-2\"]")
    private List<String> list1;

    @Schema(type = "array",example = "[\"value2-1\",\"value2-2\"]")
    private List<String> list2;

    @Schema(example = "[\"value3-1\",\"value3-2\"]")
    private List<String> list3;
}

http://localhost:8080/swagger-ui/index.html生成的 JSON 请求示例如下:

{
  "list1": "[\"value1-1\",\"value1-2\"]","list2": "[\"value2-1\",\"value2-2\"]","list3": "[\"value3-1\",\"value3-2\"]"
}

而不是我所期望的

{
  "list1": ["value1-1","value1-2"],"list2": ["value2-1","value2-2"],"list3": ["value3-1","value3-2"]
}

Springfox 中似乎存在错误,请参阅 issue #3863issue #1855

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。