0

我最近完成了一个与我的 Android 应用程序完美交互的 Slip PHP API 构建。我现在正在构建一个 Web 前端,对于我的生活,我无法理解如何使用 ngResource 的查询功能通过 GET 请求信息。

我的 index.html 文件是:

<!doctype html>
<html ng-app="discussApp">
<head>
</head>
<body>

<div ng-controller="topicsController">
  <div>{{ topics }}</div>
</div>

<script type="text/javascript" src="js/angular.min.js"></script>
<script type="text/javascript" src="js/angular-resource.min.js"></script>
<script type="text/javascript" src="js/angular-route.min.js"></script>
<script type="text/javascript" src="js/app.js"></script>
</body>
</html>

我的 app.js 文件:

var app = angular.module('discussApp', ['ngResource']);

app.controller("topicsController", function($scope, $resource, $http) {
  var Topics = $resource("http://api.discussorama.com/v1/topics");

  $scope.topics = Topics.query();
});

我正在尝试阅读的信息(我已经从 Chrome 的高级 REST 客户端、浏览器和我的 Android 应用程序中成功完成了这项工作)位于http://api.discussorama.com/v1/topics(注意:我暂时禁用了 Slim PHP 中的身份验证中间件以使用 Angularjs 进行测试)。端点返回一个 json 响应,但除了“[]”之外,我在 Angular 中看不到任何东西。Angular 应用程序的链接是http://hwaelapps.com/discuss/web如果有人想看看到底发生了什么。在此先感谢您的帮助。注意:我已经尝试了几个 ngResource 配置选项,包括 urlencode 但它仍然没有接收到数据,所以我剥离了所有这些,所有代码都直接与问题中的一样。

4

1 回答 1

0

答案一直在控制台日志中。我收到的错误是:

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.

解决方案只是添加

header("Access-Control-Allow-Origin: *");

到我的 Slim API 的 index.php 文件。我猜我的共享主机没有为 CORS 配置。

于 2014-04-25T18:42:17.273 回答