我查看了各种答案,但它们无法解决我的问题。我有一个非常具体的客户需求,无法使用请求的正文。
我已经检查了这些帖子:
注意:我确实对URI进行了编码。
我遇到各种错误,但非法的HTML字符是其中之一。要求很简单:
编写一个接受以下请求的REST服务
GET /blah/bar?object=object11&object=object2&...
对象是一个POJO,将采用以下JSON格式
{
"foo": bar,
"alpha": {
"century": a,
}
}
很显然,我将阅读对象列表...
我的代码极其简化...如下。
@RequestMapping(method=RequestMethod.GET, path = "/test")
public Greeting test(@RequestParam(value = "object", defaultValue = "World") FakePOJO aFilter) {
return new Greeting(counter.incrementAndGet(), aFilter.toString());
}
我也尝试过将其封装为String并在以后转换,这也不起作用。
有什么建议吗?这确实应该非常简单,并且hello world spring rest tut应该是一个好的虚拟测试框架。
----编辑----
我发现杰克逊是如何解析json的。我已经解决了,但会写出来。.我将在星期一后提供确切的详细信息。精简版。为了使其适用于单个过滤器和多个过滤器,将其捕获为字符串并使用json slurper
答案 0 :(得分:1)
如果您对@RequestParam
或Map<String, String>
参数使用MultiValueMap<String, String>
注释,则将使用您在URL中指定的所有请求参数填充地图。
@GetMapping("/blah/bar")
public Greeting test(@RequestParam Map<String, String> searchParameters) {
...
}
检查documentation以获得更深入的解释。