2016-12-03 21 views
1

我發出了一個GET請求以通過ID獲取用戶,但它似乎不起作用(根本沒有任何反應)。我正在使用我的用戶ID,因此我知道用戶存在。我沒有收到任何錯誤消息。對StackExchange API的HTTP GET請求在AngularJS應用程序中不返回

這裏是我的AngularJS代碼:

myApp.controller('mainpage', ['$scope', '$http', '$resource', 'AuthService', 'sharedPropertie', function ($scope, $http, $resource, AuthService, sharedPropertie) { 

$scope.test='7194489'; 
$scope.user=[]; 

$http.get('https://api.stackexchange.com/2.2/users/'+$scope.test+'?order=desc&sort=reputation&site=stackoverflow') 
    .then(function(value) { 
    console.log('value in mainpage'+value); 
     $scope.user.push(value); 
     }); 
}]); 

而我的觀點:

<body> 
    <div ng-controller="meetupsController"> 
    <div ng-controller="routeController"> 
      <a ng-click='gotoprive()' class="btn btn-default">Prive</a> 
      <a ng-click='gotopublicforum()' class="btn btn-default">Forum public</a> 
      <a ng-click='logout()' class="btn btn-default">logout</a> 
      <a ng-click='topublicforumgw()' class="btn btn-default">public forum</a> 
      <a ng-click='toprivateforumgw()' class="btn btn-default">private forum</a> 
      <a ng-click='toaccesscontrol()' class="btn btn-default">accesscontrol</a> 
      <a ng-click='tomessengergw()' class="btn btn-default">messenger</a> 
      <a ng-click='topopulatedforumgw()' class="btn btn-default">populated forum</a> 
     </div> 
    <h1>{{user[0]}}</h1> 
    </div> 
</body> 
+0

它不記錄任何東西嗎?如果沒有,請將其更改爲'.then(console.log,console.log)'並查看會發生什麼。 – Aurora0001

+1

hey 10x您的評論。它沒有記錄任何東西。 (console.log,console.log) –

+0

在'$ http.get'之後,你現在擁有'.then' - 用我的建議替換它,看看有什麼記錄。 – Aurora0001

回答

1

您使用了錯誤的控制器,讓你的控制器的代碼(包括$http.get)永遠不會在第一次執行地點。將<div ng-controller="meetupsController">更改爲<div ng-controller="mainpage">,以便mainpage控制器的代碼得到執行。