大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇文章给大家分享的是有关@RequestBody获取POST方式的json字符串,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
成都创新互联公司专业为企业提供淮阴网站建设、淮阴做网站、淮阴网站设计、淮阴网站制作等企业网站建设、网页设计与制作、淮阴企业网站模板建站服务,十多年淮阴做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
前端写法:
var json_data={ "name" : "demographics", "params" : [1 , 2, 3], "items" : [ {"name" : "中文", "value" : 10 }, {"name": "item2", "value" : 20 } ] }; $.ajax({ url : 'chart/graphics', type : 'post', data : JSON.stringify(json_data), contentType : 'application/json;charset=utf-8' //中文需要加上charset=utf-8才正确 });
后端写法
@RequestMapping(value="/{name}", method=RequestMethod.POST, produces="application/json;charset=utf-8;") @ResponseBody public String postDashboardItem( @PathVariable(value="name") String name, @RequestBody String params, Model model) { JSONObject object= JSON.parseObject(params); //do somthings return ""; //json string }
更正:
感谢alan_waker的提醒,重复做了map接收参数的实验,效果不错。
前端写法一样,
后端写法:
@RequestMapping(value="/{name}", method=RequestMethod.POST, produces="application/json;charset=utf-8;") @ResponseBody public String postDashboardItem( @PathVariable(value="name") String name, @RequestBody Mapparams, Model model) { //do somthings return ""; //json string }
需要引用 jackson-databind包,否则前端会报 415错误。后台报Content type 'application/json;charset=UTF-8' not supported。
以上就是@RequestBody获取POST方式的json字符串,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。