由angularjs 引发的spring mvc JSON传值问题
发布时间:2020-12-17 09:49:34 所属栏目:安全 来源:网络整理
导读:通常表单submit传的是 json对象 ajax 传的是json对象 angular传的是json字符串 对于后台接收json对象不需要再参数上加@RequestBody 而对于接收json字符串 需要加@RequestBody,并且要引入jackjson jar包 (1)angular向后台传json字符串@RequestBody 前台ang
通常表单submit传的是 json对象 ajax 传的是json对象 angular传的是json字符串 对于后台接收json对象不需要再参数上加@RequestBody 而对于接收json字符串 需要加@RequestBody,并且要引入jackjson jar包 (1)angular向后台传json字符串@RequestBody前台angular代码 $http({ method:'POST',url:"http://localhost:8090/angu_demo/test.chtm",data:{"age":20 } }) .success(function(data,header,config,status){ //响应成功 $scope.names = data[0].age; }).error(function(data,status){ //处理响应失败 }); 后台spring mvc代码 @RequestMapping("/test.chtm") @ResponseBody public List<UserBean> test(@RequestBody UserBean userBean,Model model,HttpServletRequest request,HttpServletResponse response){ int age2=userBean.getAge(); userBean.setAge(age2+1); List<UserBean>list=new ArrayList<UserBean>(); list.add(userBean); return list; } (2)angular向后台传递json对象前台angular代码 $http.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded"; var transform =function(data){return $.param(data); } $http.post("http://localhost:8090/angu_demo/test.chtm",{"age":20 },{headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'},transformRequest: transform}) .success(function(data,status){ //处理响应失败 }); 后台 spring mvc代码 @RequestMapping("/test.chtm") @ResponseBody public List<UserBean> test( UserBean userBean,HttpServletResponse response){ int age2=userBean.getAge(); userBean.setAge(age2+1); List<UserBean>list=new ArrayList<UserBean>(); list.add(userBean); return list; } 下载地址 http://download.csdn.net/detail/u013378306/9672103 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |