我有一个@RestController
和一种GET
方法,用于列出资源R
的所有实例
我希望swagger-ui
列出三次这种GET
方法,如下所示:
GET
个请愿书相对应的:
/resources?foo=myFoo
/resources?bar=myBar
/resources?foo=myFoo&bar=myBar
以便我的API Rest的客户端不必猜测它们可以通过foo
或bar
进行搜索,而只需查看swagger-ui
(版本{{1} })并使用这些API调用
但是,鉴于这三种方法位于2.9.2
路径下,挥舞者只列出其中一种,而只列出一种。
问题是,如何列出三个API调用?
编辑:这似乎是Swagger 2 Unable to add multiple operations on same path in swagger rest API documentation #1378的局限性,所以我将问题改写为:
答案 0 :(得分:0)
我将RController
改写为只有一个GET
@RestController("/path-to-r")
public class RController
{
@GetMapping
public List<R> findR(Optional<String> foo, Optional<String> bar)
{
....
}
}
并按照Java 8 Optional @RequestParam lost from the swagger-ui #1848
中的说明添加了genericModelSubstitutes
最终结果是,当我的API的客户端单击组合时,他们可以看到要包含在GET
请愿书中的两个可选参数