这是我的angularjs代码
$http({
method : "POST",
url : '/jobseeker',
data : {
"email" : $scope.userdata.uemail,
"firstname" : $scope.userdata.fname,
"lastname" : $scope.userdata.lname,
"password" : $scope.userdata.upassword
}
}).success(function(data) {
console.log(data);
//state.go(to verification page for job seeker
})
下面是我的rest控制器映射
@RequestMapping(value = "/jobseeker", method = RequestMethod.POST)
public ResponseEntity signUp(@RequestParam("email") String email,
@RequestParam("firstname") String firstname,
@RequestParam("lastname") String lastname,
@RequestParam("password") String password) { ....}
我收到400错误请求错误,说明缺少参数电子邮件
我还尝试在代码中添加以下头文件,但仍然收到相同的错误
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
发布于 2017-05-16 20:00:09
我不确定你是否解决了这个问题,但我正在尝试从AngularJS发布一个标准的方法,但我相信几乎没有其他方法可以做到这一点。
在AngularJS中,保存对控制器的POST调用的函数。
$scope.httpFunction = function() {
var data = new FormData();
data.append('email', $scope.userdata.uemail);
data.append('firstname', $scope.userdata.fname);
// Append as many parameters as needed
$http.post('jobseeker', data, {
withCredentials : false,
transformRequest : angular.identity,
headers : {
'Content-Type' : undefined
}
}).then(function(response){
// ANything you wanted to do with response
})
}
始终确保参数数量匹配,并且Angular和Controller中的参数名称相同
https://stackoverflow.com/questions/43883051
复制相似问题