我无法从服务填充控制器中的 JSON 数据。
我对如何实际连接它们有点卡住了。通过生成 JSON 调用该服务时工作正常。当我使用存储库时,控制器也可以工作。为了节省空间,我省略了一些代码。
问题可能出在控制器上,我只是不知道是什么。我真的很感激一些启发。
Angular Controller (root/app/user.controller.js)
(function() {
angular
.module('app')
.controller('UserController', UserController);
function UserController($http) {
var that = this;
$http({
method: 'GET',
url: '/api/users'
}).success(function(data) {
that.users = data;
});
}
})();
PHP Service (root/api/index.php)
<?php
require 'vendor/autoload.php';
$app = new 'Slim'App;
$app->get('/users', 'getUsers');
$app->run();
function getUsers() {
$sql = "select * FROM users ORDER BY id";
try {
$db = getConnection();
$stmt = $db->query($sql);
$wines = $stmt->fetchAll(PDO::FETCH_OBJ);
$db = null;
echo json_encode($wines);
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
}
?>
来自 PHP 服务的JSON 结果通过访问 http://localhost/root/api/users
[{"id":"1","username":"lucentx","first_name":"Aron","last_name":"Barbosa","address":"Manila, Philippines"},{"id":"2","username":"ozzy","first_name":"Ozzy","last_name":"Osbourne","address":"England"},{"id":"3","username":"tony","first_name":"Tony","last_name":"Iommi","address":"England"}]
HTML View (index.html)
<div class="col-md-4" ng-controller="UserController as userCtrl">
<ul class="list-group">
<li class="list-group-item" ng-repeat="user in userCtrl.users">
<p>{{user.id}} - {{user.username}}</p>
</li>
</ul>
</div>
尝试删除 url 中的前导/
,因为这会告诉浏览器从站点的根目录开始......不在您想要的目录中