前后端对应接口及前端ajax数据格式
1.如果前端这么写post请求 2.如果这样写 var user={ id:1,image: ‘‘ }; $.ajax({ url:this.restApiUrl + "/user.do",type: "POST",data:JSON.stringify(user),dataType:"json",contentType:"application/json",success:function(data){ alert("注册用户成功!"); } }); //Java后端这样写即可 @RequestMapping(value={"/user"},method={org.springframework.web.bind.annotation.RequestMethod.POST}) @ResponseBody public Map<String,Object> user_register(@RequestBody User user,HttpServletResponse response){ userService.addUser(user); Map<String,Object>(); item.put("msg","success"); return item; } 注:相对于angular和vue的post和put必须采用第二种写法使用注解@RequestBody,否则无法接受到传过来的对象。 this.user={ id:1,image: ‘‘ }; vue: this.$http.post(this.apiUrl + ‘/user.do‘,this.user).then((response) => { this.queryAllUser(); }); angular: var user={ id:1,image: ‘‘ }; $http.post(this.apiUrl + ‘/user.do‘,user).success(function(data) { console.log(data); }).error(function(err) { //错误代码 }); 3.意外看到这种写法 <script type="text/javascript"> $(document).ready(function(){ var userDataArry=[]; var user1=={"username":"admin","address":"hubei"}; var user2={"username":"root","address":"hunan"}; userDataArry.push(user1); userDataArry.push(user2); $.ajax({ type:"POST",url:"user/saveUser",data:JSON.stringify(userDataArry),success:function(data){ } }); }); </script> //Java后端这样写即可 @RequestMapping(value = "saveUser",method = {RequestMethod.POST }}) @ResponseBody public void saveUser(@RequestBody List<User> users) { userService.batchSave(users); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |