2015-01-17 81 views
0

我正在從此site中學習。XMLHttpRequest無法在angularjs中加載

我使用這個爲Android應用程序來獲取PHP數據並顯示應用程序。

當我開始在AngularJS Web服務,谷歌Chrome給人在控制檯此錯誤:

的XMLHttpRequest無法加載http://192.168.1.10/android_connect/JsonReturn.php。請求的資源上沒有「Access-Control-Allow-Origin」標題。因此不允許原產地'null'訪問。

這是我的JavaScript代碼:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script> 
<script>function GetUsers($scope, $http) { 
    // this is where the JSON from api.php is consumed 
    $http.get('http://192.168.1.10/android_connect/JsonReturn.php'). 
     success(function(data) { 
      // here the data from the api is assigned to a variable named users 
      $scope.users = data; 
     }); 
}</script> 

然後,我設置的HTML代碼:

<div ng-controller="GetUsers"> 

<table> 
<thead><tr><th>ID</th><th>Name</th><th>Email</th></tr></thead> 
<tbody> 
<tr ng-repeat="user in users"><td>{{user.id}}</td><td>{{ user.name }}</td><td>{{user.email}}</td></tr> 
</tbody> 
</tfoot></tfoot> 
</table> 

</div> 

我嘗試了所有可能的解決方案發布,但它似乎並沒有解決在我的代碼問題。

+0

我認爲這個錯誤是非常自我解釋沒有''訪問控制 - 允許來源'標題出現在請求的資源'。 **訪問控制,允許來源應在您的標題** – ilgaar

+0

我加這個,但不工作 –

回答

3

您正在嘗試使用XMLHttpRequest進行跨域請求。爲此,響應請求的Web服務器需要將Access-Control-Allow-Origin響應標頭設置爲*

+0

哪裏把這個我在上面的代碼..... –

+2

添加此標頭('訪問控制 - Allow-Origin:*');'在你的JsonReturn.php中 – Arvind

0

或者,您可以從託管API的同一臺服務器上提供Angular頁面。那麼你沒有跨域請求。