您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

尝试使用Spring Boot REST从POST读取JSON字符串

尝试使用Spring Boot REST从POST读取JSON字符串

我认为使用JSON的最简单/便捷的方法是使用类似于JSON的Java类:http://codingdict.com/questions/6613 但是,如果您不能使用java类,则可以使用这两种解决方案之一。

您可以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

否则,您可以通过 方式获取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
Java 2022/1/1 18:15:11 有613人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶