我无法获取JSON数据AngularJS

我无法获取JSON数据AngularJS

问题描述:

我想获得The New York Times的MOVIE REVIEWS API。我尝试了使用AngularJS,但我没有提供。可以有人帮助我吗?我无法获取JSON数据AngularJS

var app = angular.module('movieApp', []); 
app.controller('movieController', 
    function movieController($scope, $http) { 
     $scope.fetchReviews = function() { 
      var api = 'http://api.nytimes.com/svc/movies/v2/reviews/all.jsonp?&offset=20&order=by-opening-date&api-key=XXX MY KEY XXX&responce-format=.jsonp&callback=JSON_CALLBACK'; 
      $http.jsonp(api).success(function(data){ 
       $scope.results = data.results; 
      }); 
     } 

    }); 

HTML

<!DOCTYPE html> 
<html lang="en" ng-app="movieApp"> 
<head> 
<meta charset="UTF-8"> 
<title>Movie Review</title> 
<script type="text/javascript" src="js/angular.min.js"></script> 
<script type="text/javascript" src="js/app.js"></script> 
</head> 
<body> 
<div ng-controller="movieController"> 
    <ul class="review-cards"> 
     <li ng-repeat="item in results"> 
      <h2>{{item.display_title}}</h2> 
      <p>{{item.summary_short}}</p> 
     </li> 
    </ul> 
</div> 

</body> 
</html> 
+2

当fetchReviews函数被触发 – MohamedAbbas 2014-09-25 04:57:30

+0

对,你需要调用fetchReviews函数。在你发布的代码中,它永远不会被执行。 – Gustav 2014-09-25 05:27:59

你必须处理该事件的一些元素或只是把它在你的控制器。

var app = angular.module('movieApp', []); 
app.controller('movieController', 
    function movieController($scope, $http) { 
     // define default value 
     $scope.results = []; 

     $scope.fetchReviews = function() { 
      var api = 'http://api.nytimes.com/svc/movies/v2/reviews/all.jsonp?&offset=20&order=by-opening-date&api-key=XXX MY KEY XXX&responce-format=.jsonp&callback=JSON_CALLBACK'; 
      $http.jsonp(api).success(function(data){ 
       $scope.results = data.results; 
      }); 
     } 

     // call that event 
     $scope.fetchReviews(); 
}); 

试试吧。

app.controller('movieController', function ($scope, $http) { 
    $scope.fetchReviews = function() { 
     var api = 'http://api.nytimes.com/svc/movies/v2/reviews/all.jsonp?&offset=20&order=by-opening-date&api-key=XXX MY KEY XXX&responce-format=.jsonp&callback=JSON_CALLBACK'; 
     $http.jsonp(api).success(function(data){ 
      $scope.results = data.results; 
     }); 
    } 
    $scope.fetchReviews(); 
}); 

检查这样