请求参数版本控制

时间:2018-03-08 04:07:19

标签: rest jersey versioning

我正在使用Jersey将请求映射到服务类。我正在尝试为应用程序实现请求参数版本控制。问题是Jersey只使用URI映射并忽略参数。另外,我希望仅根据请求参数执行不同的请求方法。例如," http://www.example.com/content?version=1"应该指向MethodA和" http://www.example.com/content?version=2"应该指向MethodB。我有什么方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:0)

不确定这是否是你想要做的,但似乎你只想阅读参数。您可以使用@QueryParam注释获取Jersey的参数。所以对于这个URI:

yourBaseUri/content?version=1

一个例子是:

@GET
@Path("/content")
public Response myMethod(@QueryParam(value = "version") String version) { 
    if("1".equals(version)) {
       // call MethodA
    } else if("2".equals(version))
       // call MethodB
    } else {
       // handle wrong/missing version number
    }
}