我使用Swagger来记录REST API。
我正在上这样的课程:
public class Source{
private String url;
private String category;
private String label;
...
}
我目前正在使用@ApiImplicitParam将dataType设置为Source.class,但是我有多个POST请求将JSON作为body参数,例如,使用这些参数的单个变量,例如:
{"label": "labelA"}
由于之前设置的dataType,Swagger UI显示的示例值是一个完整的Source.class,如下所示:
{
"url": "string",
"category": "string",
"label": "string",
...
}
我可以以某种方式切断Swagger UI显示的每个请求的示例值吗?我的意思是getSourceFromUrl()请求应该获得一个只包含url字段的JSON,示例应该显示这个而不是完整的Source.class JSON。
提前谢谢大家!
更新
我正在使用JAX-RS。如果需要,请问我更多的意见。
答案 0 :(得分:2)
如果您使用的是springfox-swagger2,则会有一个注释@ApiModelProperty
来执行此操作。
示例:
@ApiModelProperty(required = false, hidden = true)
private String label;
答案 1 :(得分:0)
目前,你不能做这样的事情。你必须为每个案例创建一个不同的类。
参见swagger-core的github:https://github.com/swagger-api/swagger-core/issues/1863#issuecomment-237339565