2015-02-20 3 views
0

Я пытаюсь найти способ передать параметр, чтобы использовать его в своей переменной «конечная точка», как вы можете видеть в моем коде. У меня есть URL-адрес и в конце из этого у меня есть «/ clientes», но в моем API у меня также есть «продукты» и «путешествия», поэтому я ищу решение для использования переменной, чтобы я мог изменить конец URL-адреса, мне нужно будет создать еще одну фабрику, чтобы получить мои «продукты» и «путешествия».Использовать параметры в угловой фабрике для пользовательского заголовка

angular.module('starter.services', []) 



    .factory('ServiceClientes', ['$http', function ($http) { 


     var endpoint = 'http://api.rep.com/api/clientes'; 
     var token = '99KI9Gj68CgCf70deM22Ka64chef2J2J0G9JkD0bDAcbFfd19MfacGf3FFm8CM1hG0eDiIk8'; 
     var credencial = '[email protected]:cd8cdx5ef753a06ee79fc75dc7cfe66c'; 
     var origem = 'mobile'; 


     var config = { 
      url: endpoint, 
      dataType: 'json', 
      method: 'GET', 
      data: '', 
      headers: { 
       'X-API-TOKEN': token, 
       'X-API-CREDENCIAL': credencial, 
       'X-API-ORIGEM': origem, 
       "Content-Type": "application/json" 
      } 
     }; 


     return { 

      getAll: function() { 
       return $http(config); 
      } 

     }; 



    }]); 

контроллер:

.controller('PlaylistsCtrl', function ($scope, ServiceClientes) { 

     ServiceClientes.getAll().success(function (data) { 
      $scope.playlists = data.dados; 
     }).error(function (error) { 
      console.log(error); 
     }); 



    }) 

ответ

1

Затем сделайте вашу функцию инъекционным с параметром:

var endpoint = 'http://api.rep.com/api/'; 

var config = { 
    dataType: 'json', 
    method: 'GET', 
    data: '', 
    headers: { 
     'X-API-TOKEN': token, 
     'X-API-CREDENCIAL': credencial, 
     'X-API-ORIGEM': origem, 
     "Content-Type": "application/json" 
    } 
};  

return { 
    getAll: function (url) { 
     config.url = endpoint + url; 
     return $http(config); 
    } 
}; 

контроллер:

ServiceClientes.getAll("clientes").success(function (data) { 
+0

Спасибо людей !! –

Смежные вопросы