我认为使用JSON的最简单/便捷的方法是使用类似于JSON的Java类:http://codingdict.com/questions/6613
但是,如果您不能使用Java类,则可以使用这两种解决方案之一。
解决方案1: 您可以
Map<String, Object>从控制器接收到它:
@RequestMapping( value = "/process", method = RequestMethod.POST)public void process(@RequestBody Map<String, Object> payload) throws Exception { System.out.println(payload);}使用您的请求:
curl -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"name":"value"}' http://localhost:8080/myservice/process解决方案2: 否则,您可以通过 以下 方式获取POST负载
String:
@RequestMapping( value = "/process", method = RequestMethod.POST, consumes = "text/plain")public void process(@RequestBody String payload) throws Exception { System.out.println(payload);}然后根据需要解析该字符串。请注意,必须
consumes ="text/plain"在控制器上指定。在这种情况下,您必须使用以下命令更改您的请求
Content-type: text/plain:
curl -H "Accept: application/json" -H "Content-type: text/plain" -X POST -d '{"name":"value"}' http://localhost:8080/myservice/process


