我有一个接受带有数组类型的 JSON 主体的 POST 请求的资源,例如:
[
{ "foo": "bar" },
{ "foo": "baz" },
...
]
要使用 Swagger 注释记录非集合类型,我可以这样做:
@ApiImplicitParams(Array(
new ApiImplicitParam(paramType = "body", dataType = "my.Request", required = true)
))
如何对数组主体类型执行相同的操作,例如
Seq[my.Request]
?
可以通过引入扩展 Java 标准库列表的代理特征来完成:
trait ArrayBody extends java.util.List[ArrayElementType]
然后在端点注释中:
@ApiImplicitParams(Array(
new ApiImplicitParam(paramType = "body", dataType = "foo.bar.ArrayBody", required = true)
))
尝试添加
allowMultiple = true
,如下所示:
@ApiImplicitParams(Array(
new ApiImplicitParam(paramType = "body", dataType = "my.Request", allowMultiple = true, required = true)
))