作为开发的一部分,我想维护两个不同版本的响应。我使用生成关键字作为请求映射的一部分来区分实现。
当version = 1.0时,应该调用第一个实现的方法,当版本2.0时,应该调用第二个实现的方法。
但在我的情况下,它总是调用较低版本的方法。
**
@RequestMapping(value = "/example", method = GET,produces= HAL_JSON_VALUE+";version=1")
public void method1(){
System.out.println("in method1");
}
@RequestMapping(value = "/example", method = GET,produces= HAL_JSON_VALUE+";version=2")
public void method2(){
System.out.println("in method2");
}
**
答案 0 :(得分:0)
Spring MVC在内容协商期间没有考虑媒体类型参数。请参阅this issue for more background on that。
REST API提供商通常选择在类型本身中包含该版本号,例如application/vnd.github.v3+json
。