Angular JS Cross Domain问题

时间:2014-04-23 04:39:48

标签: angularjs jsonp

我正在使用AngularJS $资源来使用JSONP获取一些数据。

 app.controller('Hello', ['$scope', 'Phone', function($scope, Phone,$http) {

  $scope.data=Phone.query();

}]);
mycallback = function(data,$scope){
  alert(data.found);
};

app.factory('Phone', ['$resource',function($resource){
return $resource('http://public-api.wordpress.com/rest/v1/sites/wtmpeachtest.wordpress.com/posts?callback=mycallback', {}, {
  query: 
    {
        method:'JSONP', 
        params:{}, 
        isArray:false,
        callback: 'JSON_CALLBACK'

    }
});
}]);

错误控制台显示“Uncaught SyntaxError:Unexpected token:”。请告诉我,我如何才能最好地处理JSONP数据。

2 个答案:

答案 0 :(得分:0)

在访问之前,您必须在工厂中包含$ scope。

app.factory('Phone', ['$resource','$scope',function($resource,$scope){}
]);

答案 1 :(得分:0)

确定。一旦我将回调函数放在控制器

中,我就可以访问$ scope
    app.controller('Hello', ['$scope', 'Phone', function($scope, Phone,$http) {

    Phone.query();
    mycallback = function(data){
    $scope.data= data.found;

    };


 }]);