我试图编写GET,它将返回基本或完整参数集的响应。
例如。请求此网址
localhost:8080/resource?&outputSchema=basic
应该返回
{
"total": 5
}
但是这个请求
localhost:8080/resource?&outputSchema=extended
应该返回更多数据
{
"total": 5,
"name": "John"
}
如何根据请求参数在spring中发送不同的响应?
答案 0 :(得分:0)
其实我找到了答案。对于@RequestMapping
,应使用params
参数按所需参数值进行过滤。
例如,一个端点看起来像这样
@RequestMapping(method = RequestMethod.GET, params = "outputSchema=basic", produces = {"application/json"})
public @ResponseBody MyResponse1 findSomeResource(
@RequestParam(value = "outputSchema", required = true) String outputSchema) {
return new MyResponse1();
}
和第二个
@RequestMapping(method = RequestMethod.GET, params = "outputSchema=extended", produces = {"application/json"})
public String test() {
return "Different response";
}