我如何声明一个控制器方法,它接受一个列表的列表作为查询参数?那我该怎么称呼它
我的具体意思是
suspend fun v1GetSearch( @PathVariable("id") id: String, @Valid @RequestParam(value = "options", required = false) options: List<List<String>>?): ResponseEntity<SearchResponse>
然后我想把它叫做:
http://localhost:8080/search/id?options=[["aaa","bbb","ccc","ddd"],["abcd","abcd","abcd","abcd"]]
这可能吗?
我也看到过关于同样事情的其他问题,但很多答案总是建议使用POST而不是GET,并通过请求体发送列表的列表。在我的例子中,这不是一个选项,因为我希望端点是完全幂等和可缓存的。
1条答案
按热度按时间suzh9iv81#
正如duffymo所说,在param上发送很多数据不是一个好主意。但如果我想回答你的问题,你可以创建一个类或记录(如果你使用的是jdk14或以上)如下:
然后在控制器类中使用它如下:
因此您get请求将为: