我在
尝试了示例REST JSON服务http://www.javacodegeeks.com/2013/04/spring-mvc-easy-rest-based-json-services-with-responsebody.html
并且JQuery客户端可以成功地将人物对象发布到服务中!雅虎!
我如何用cURL做同样的事情? 这是我的尝试:
curl -i -X POST -H "Content-Type: application/json; charset=UTF-8" -H "Accept: application/json" -d "{'name':'siegfried','age':26}" http://localhost:8080/api/person
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 71 100 42 100 29 39 26 0:00:01 0:00:01 --:--:-- 40
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 42
Server: Jetty(6.1.25)
Saved person: Person [name=null, age=null]
Compilation finished at Sun Dec 08 22:14:05
它没有解析数据!如何解析我的json数据?
我一直在谷歌搜索几个小时,尝试了许多转义引号和撇号之类的组合,似乎没有任何效果。
由于
齐格弗里德
答案 0 :(得分:2)
-d
会将您的数据作为帖子发送,您无需声明POST
。
man curl
提供了有关如何使用-d
的说明。如果其他人需要它。
一个简单的Sinatra服务器http://www.sinatrarb.com,或类似的东西,可以用来调试你的卷发以及一个模拟服务器
问题是否存在于服务器端,如果您在本地主机上运行它,您应该可以访问它,对吧?
答案 1 :(得分:0)
我发现了问题! spring @ResponseBody使用JSON进行get,但使用URL编码进行POST。 查看http://codetutr.com/2013/04/09/spring-mvc-easy-rest-based-json-services-with-responsebody/的jQuery POST方法 为什么不一致?这让我疯了!
好吧,我还没有cURL命令。但我确实有java和groovy客户端,现在可以POST和GET。我很快就会有一个cURL。