简体   繁体   English

Angular在浏览器中给出400错误请求

[英]Angular giving 400 bad request in browser

I am getting a 400 Bad request while inserting values in the database. 我在数据库中插入值时收到400错误的请求。 The new data is successfully inserted but in the browser it is giving bad request. 新数据已成功插入,但在浏览器中给出了错误的请求。 For back end I am using Spring controller and mongoDB, using angularJs controller. 对于后端,我使用Spring控制器和mongoDB,使用angularJs控制器。 Please see the below code for the same. 请参见以下代码。 Can anybody tell what is the problem ? 有人能说出什么问题吗?

Spring controller code - 弹簧控制器代码-

@RequestMapping(value="/users/update/{id}/{firstName}/{lastName}/{email}/{mobile}/{creation_time}/{status}",method = RequestMethod.POST,headers="Accept=application/json")
public List<User> updateUser(@PathVariable int id,@PathVariable String firstName,@PathVariable String lastName,@PathVariable String email,@PathVariable String mobile,@PathVariable long creation_time,@PathVariable String status) throws ParseException { 
             Date date = new Date(creation_time); 
             User user = new User();
               user.setFirstName(firstName);
               user.setLastName(lastName);
               user.setEmail(email);
               user.setMobile(mobile);
               user.setLast_update_time(new Date());
               user.setCreation_time(date);
               user.setStatus(status);
               userService.updateUserService(user);
             return userService.getAllUserService();
         }

Angular Js controller - Angular Js控制器-

$scope.updateUser=function(user){           $http.post(urlBase+'users/update/'+user.id+'/'+user.firstName+'/'+user.lastName+'/'+user.email+'/'+user.mobile+'/'+user.creation_time+'/'+user.status)
                .success(function(data) {
                    $scope.users = data;
                     $scope.selected = {};
                }); 
        };

You're missing the annotation @ResponseBody in your method header. 您在方法标头中缺少注释@ResponseBody。 Try : 尝试:

@RequestMapping(value="/users/update/{id}/{firstName}/{lastName}/{email}/{mobile}/{creation_time}/{status}",method = RequestMethod.POST,headers="Accept=application/json")
public @ResponseBody List<User> updateUser(.....){
    ....
}

I got the solution to this, was sending 'id' field in the path, have removed the same and it seems to be working fine. 我得到了解决方案,正在路径中发送“ id”字段,删除了相同的字段,似乎工作正常。 Thanks everyone all for your answers. 谢谢大家的回答。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM