gpt4 book ai didi

java - RestEasy 可以根据查询参数选择方法吗?

转载 作者:搜寻专家 更新时间:2023-11-01 03:24:51 25 4
gpt4 key购买 nike

我已经开始使用 RestEasy,但遇到了一个我似乎无法找到答案的问题。如果我有 2 个方法都解析到相同的路径(在本例中为/path1/path2/path3),但它们都有不同数量的查询参数,RestEasy 是否能够确定使用哪个方法?

@GET
@NoCache
@Produces({
MediaType.APPLICATION_JSON
})
@Path("/path1/path2/{path3}")
public String getResults1(
@PathParam("path3") String path3,
@QueryParam("query1") @DefaultValue("") String query1,
@QueryParam("query2") String query2,
@QueryParam("query3") @DefaultValue("25") int query3) {
...
}

@GET
@NoCache
@Produces({
MediaType.APPLICATION_JSON
})
@Path("/path1/path2/{path3}")
public String getResults2(
@PathParam("path3") String path3,
@QueryParam("query1") @DefaultValue("") String query1,
@QueryParam("query2") @DefaultValue("5") Integer query2) {
...
}

我做了一些测试,昨天似乎一切都运行良好,它可以选择正确的路径,但今天我开始看到它每次都走错了路径。

这是应该处理的事情,还是我应该将其吸收并放入 1 方法中并自己进行检查?

最佳答案

不,您应该在方法中处理它。如果发现冲突资源,则匹配哪个方法与实现无关。

再看看你的例子:

如果您提交了 query1 和 query2,它如何知道您想要带有 2 个查询参数的方法还是带有 3 个查询参数的方法,并且您希望它将第 3 个参数默认为默认值?

关于java - RestEasy 可以根据查询参数选择方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17196766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com