0

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";
}

しかし、URL を /session=1&p1=a&p2=b および /session=1/&p1=a&p2=b&p3=c と入力すると、常に同じ文字列「Get Data」が返されます。デバッグ中に、両方のリクエストが同じ最初のメソッドと p2="b&p3=c" に送信されることがわかりました。それは本当に私を混乱させます:(

君の力が必要。ありがとう。-C

4

1 に答える 1

0

次のようなさまざまなパターンを使用して、サポートされていない「オーバーロード」を回避できます。

"/session={sessionID}/data1/&p1={p1}&p2={p2}"

"/session={sessionID}/data2&p1={p1}&p2={p2}}&p3={p3}"
于 2012-03-20T22:32:25.177 に答える