无法使用jsonp请求从角度js命中Spring Controller

时间:2016-07-31 18:01:40

标签: angularjs spring-mvc jsonp

我正在尝试实现Spring与Angular js的集成。我正在从我的js文件发出一个jsonp请求。但是我收到的错误本身并不清楚。我尝试使用post请求,但它给出了CORS错误,这是预期的,我想避免额外的开销,所以决定继续使用jsonp。 我点击 - 并尝试使用https,但它给出了SSL协议错误,这也是预期的。但我不知道这里发生的错误是什么。

services.js

angular.module('myApp').factory('UserService', ['$http', function($http){
return{
    createUser: function(user){

        var url="http://localhost:8083/HCP_Android_Demo/user?user="+user+"&callback=JSON_CALLBACK";
        return $http.jsonp(url).success(function(data) {
            console.log(data);
            return data;
        });
    }
};
}]);

UserController.js

@Controller
 public class UserController {

@RequestMapping(value="/")
public String index() {
    return "Login";
}
@RequestMapping(value="/user",method={RequestMethod.POST,RequestMethod.GET})    
@ResponseBody
public void createUser(@RequestParam("user") User user,@RequestParam("callback") String callBackFunction){
    System.out.println("Creating User " + user.getUsername());

} 

控制台上的错误

angular.js:10573 GET http://localhost:8083/HCP_Android_Demo/user?user=[object%20Object]&callback=angular.callbacks._0 

1 个答案:

答案 0 :(得分:0)

您正在尝试将对象作为url参数发送。您可以使用POST并发送对象,也可以将用户转换为字符串(如果适合您)