XMLHttpRequest无法加载angularjs

时间:2015-01-17 13:58:21

标签: javascript php angularjs google-chrome xmlhttprequest

我正在学习site

我将它用于Android应用程序以获取PHP数据并显示应用程序。

当我在AngularJS中启动网络服务时,Google 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>

我尝试了所有可能的解决方案,但它似乎没有解决我的代码中的问题。

2 个答案:

答案 0 :(得分:3)

您正在尝试使用XMLHttpRequest发出跨域请求。要使其正常工作,响应请求的Web服务器需要将Access-Control-Allow-Origin响应标头设置为*

答案 1 :(得分:0)

或者,从托管API的同一服务器上提供Angular页面。那么您就没有跨域请求。