2015-06-29 29 views
0

我在写一个Ionic应用程序来读取我用asp.net MVC4创建的一个web API的一些数据。当我在本地机器上托管它时,Ionic应用程序读取数据就好了,但当我在Azure上发布时尝试从Web API读取数据时,角度工厂不返回任何内容。将它发布到Azure时,这有什么合理的原因吗?Ionic/Angular应用程序不读取api的json数据

当我访问本地和天蓝色的网站时,json字符串都是相同的。

[{"ID":1,"Name":"Fireworks","Time":"2015-11-30T21:00:00","Comments":"Be there by 8:00"}, 
{"ID":2,"Name":"Haircut","Time":"2015-11-30T21:00:00","Comments":"Be there by 8:00"}] 

这里是我的角度工厂

.factory('EventsFactory', ['$http', function($http) { 
    return $http.get('webAPI link here') 
     .success(function(data) { 
     return data; 
     }) 
     .error(function(err) { 
     return err; 
     }); 
}]) 

这里的代码被用于我的角度控制器

.controller('EventCtrl', ['$scope', 'EventsFactory', function($scope,  EventsFactory) { 
    EventsFactory.success(function(data){ 
     $scope.activities = data; 
    }); 
}]) 

这里的代码被用于我的视图的代码

<div class="list card" ng-controller="EventCtrl"> 
     <div class="item item-divider">Upcoming Events</div> 
     <div class="item item-body" ng-repeat="activity in activities"> 
     <div>{{activity.Name}}</div> 
     </div> 
    </div> 
+0

当你看看你的浏览器的网络选项卡上,被请求正确发送?它会返回什么吗? – benek

回答

1

为什么添加控制器和工厂的成功方法。添加成功方法只有控制器。像

.factory('EventsFactory', ['$http', function($http) { return $http.get('webAPI link here'); }])

1

在你的控制器,你需要使用then

EventsFactory().then(function(data){ 
       $scope.activites = data; 
}) 
相关问题