如何通过名单 在使用Spring MVC的发布方法中?
问题内容:
我需要在POST
方法的请求正文中传递值列表,但得到了400: Bad Request error
。
下面是我的示例代码:
@RequestMapping(value = "/saveFruits", method = RequestMethod.POST,
consumes = "application/json")
@ResponseBody
public ResultObject saveFruits(@RequestBody List<String> fruits) {
...
}
我正在使用的JSON是: {"fruits":["apple","orange"]}
问题答案:
您使用了错误的JSON。在这种情况下,您应该使用如下所示的JSON:
["orange", "apple"]
如果您必须以这种形式接受JSON:
{"fruits":["apple","orange"]}
您必须创建包装对象:
public class FruitWrapper{
List<String> fruits;
//getter
//setter
}
然后您的控制器方法应如下所示:
@RequestMapping(value = "/saveFruits", method = RequestMethod.POST,
consumes = "application/json")
@ResponseBody
public ResultObject saveFruits(@RequestBody FruitWrapper fruits){
...
}