我正在使用Spring MVC构建RESTful API,如:
@RequestMapping(value ="/session={sessionID}&p1={p1}&p2={p2}")
public @ResponseBody
Object getData1(@PathVariable String sessionID,
@PathVariable String p1, @PathVariable String p2) {
return "Get Data";
}
@RequestMapping(value ="/session={sessionID}&p1={p1}&p2={p2}&p3={p3}")
public @ResponseBody
Object getData2(@PathVariable String sessionID,
@PathVariable String p1, @PathVariable String p2, @PathVariable String p3) {
return "Get next Data";
}
但是,当我输入网址为/ session = 1& p1 = a& p2 = b和/ session = 1 /& p1 = a& p2 = b& p3 = c时,它们总是返回相同的字符串“获取数据“。在调试时,我发现两个请求都采用相同的第一种方法,而p2 =“b& p3 = c”。 这真让我困惑:(
需要你的帮助。 谢谢。 -C
答案 0 :(得分:0)
您可以使用不同的模式(如
)解决不支持的“重载”问题"/session={sessionID}/data1/&p1={p1}&p2={p2}"
和
"/session={sessionID}/data2&p1={p1}&p2={p2}}&p3={p3}"