角度多重api呼叫问题

时间:2016-02-18 21:28:19

标签: angularjs httprequest angular-services angular-controller

在我的控制器中,我正在调用一个向api发出http请求的服务,该服务返回带有我的分析数据的JSON文件。

这是我的服务:

.factory('getData', ['$http', function($http) {
return {
    getFacebookData: getFacebookData,
};

function getFacebookData(clientName) {
   return $http.get('/blah.com/'+clientName)
    .then(getDataComplete)
    .catch(getDataFailed);

   function getDataComplete(response) {
    return response.data[0].facebook;
   }

   function getDataFailed(error) {
     console.log(error);
   }
}

然后我的控制器调用这样的服务:

.controller('HomeCtrl', function ($scope, $http, getData) {
var clientName = "blah"
getData.getFacebookData(clientName)
    .then(function(data) {
    console.log("facebook:", data)
});

我遇到的问题是,在控制台中,它正在发出请求并将数据记录6次。这可能是一个愚蠢的问题,但任何关于为什么这样做以及如何只提出一次请求的建议都会很棒。

0 个答案:

没有答案