一个URI模板形式的无限数量的路径变量

时间:2014-03-25 19:30:29

标签: java spring rest uritemplate

我现有的代码如下:

@RequestMapping(value = "/{id}/{type}/{answer}", method = RequestMethod.GET)
@ResponseBody
public Results answer(@PathVariable("id") int questionId,
        @PathVariable int type,
        @PathVariable Boolean answer) {

        //do something
}

我希望能够添加使用任意数量的路径变量发出请求的能力,但保持与上面相同的模式(即/ id / type / answer / id / type / answer / id / type /答案/ ...等)。

理想情况下,我希望能够创建一个可以支持以下两个URL的API调用:

http://www.example.com/sendAnswer/id1/typeA/0

http://www.example.com/sendAnswer/id1/typeA/0/id2/typeB/1/id3/typeA/0

有没有人有任何想法?

1 个答案:

答案 0 :(得分:0)

根据您的意见,考虑创建两个端点:

/{id}/{type}/{answerId}会返回一个具体的答案。

/{id}/{type}/answers返回所有答案的数组。

在检索多个答案的情况下,您确实应该使用查询参数来过滤结果。像这样:

/{id}/{type}/answers?ids=1,2,3&types=A,B,C