虽然连接但无法从api获取数据

时间:2019-02-10 12:02:19

标签: angularjs laravel

我尝试使用api和ajax $ http方法连接后端laravel和前端angularjs。 api已连接,但无法以ng-repeat方法查看数据。我不知道出了什么问题,希望任何人都可以帮忙解决这个问题。预先感谢。

Hello.php

gem install tk -- --with-tcltkversion=8.6 \
--with-tcl-lib=/usr/lib/x86_64-linux-gnu \
--with-tk-lib=/usr/lib/x86_64-linux-gnu \
--with-tcl-include=/usr/include/tcl8.6 \
--with-tk-include=/usr/include/tcl8.6 \
--enable-pthread

api.php

<!DOCTYPE html>
<html>
<head>
    <title>Laravel + Angularjs</title>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.5/angular.min.js"></script>
</head>
<body>
    <div ng-app="myApp" ng-controller="Todoctrl">
        <li ng-repeat="x in todos">
            {{ x.name }}
        </li>
    </div>
<script>
    var app = angular.module('myApp',[])
    .controller('Todoctrl',['$scope','$http',function($scope,$http){
        var onStatsComplete = function(response){
            $scope.todos = response.data;
        }
        $http.get("api/todos").then(onStatsComplete);
    }

]);
</script>
</body>
</html>

HomeController.php

Route::middleware('auth:api')->get('/user', function (Request $request) {
    return $request->user();
});
Route::get('/todos','HomeController@todos');

1 个答案:

答案 0 :(得分:1)

您是否检查了response.data包含的内容?典型的使用资源集合的Laravel api响应会将数组放在其自己的数据键下,这使response.data.data成为在这种情况下从JS访问值所需的最终键。