2017-12-11 8 views
0

私はhttp://something.com/name/age/genderのような外部APIのURLを持っているとします。ここで、「名前」、「年齢」、「性別」はパラメータです。

私のAngular 1 Appからそのデータを取得する必要があるため、取得するために$ httpを使用する.serviceを作成しました。しかし、...そのようなサービスはコントローラから呼び出され、パラメータを受け取る必要があります。

どのように設定すればいいですか、コントローラからどのように呼び出すのですか?

export const SearchPersonService = ($http) => { 

    'ngInject'; 
    return $http.get('someUrl'); 



}; 

コントローラは、以下のコードを持っている:

私はサービスで持っている唯一のものはこれです

SearchPersonService.success(
    data => this.persons = data 


).error(
    error => alert('err') 
); 
+0

ここにコードを投稿できる方が良いでしょう。あなたが試したことは何でも。 –

+0

@AkashAgrawalここにいくつかのコードがあります。それほどではありません。 'export const SearchPersonService =($ http)=> { 'ngInject'; リターン$ http.get( '' someurl "); };' – Captain

+0

はあなたがコントローラで、あなたの文字列を編集することはできません - > '?" http://something.com/"+$scope.name+ "/" + $ scope.age + "/" + $ scope.gender' –

答えて

0

がそれを解決します!私がしなければならなかったのは、$ httpオブジェクトを必要なパラメータを持つ関数にラップすることでした:

export const SearchPersonService = ($http) => { 

    'ngInject'; 

    return function(params){ 
     return $http.get('http://someurl/'+ 
      params.name+'/'+params.age+'/'+ 
      params.gender+'/'+params.status 
     ); 
    } 
}; 
関連する問題