如何将参数传递给 Angular 1 中的 $http 请求服务?

How to pass parameters to a $http request service in Angular 1?

假设我有一个外国 API URL 像 http://something.com/name/age/gender,其中 "name"、"age" 和 "gender" 是参数。

因为我需要从我的 Angular 1 应用程序中检索该数据,所以我创建了一个 .service,它应该使用 $http 来获取它。但是...这样的服务需要从controller调用,需要接收参数

如何设置所有这些以及如何从控制器调用它?

我在服务中唯一拥有的是:

export const SearchPersonService = ($http) => {

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



};

控制器具有以下代码:

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


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

解决了!我唯一要做的就是将 $http 对象包装到一个带有必要参数的函数中:

export const SearchPersonService = ($http) => {

    'ngInject';

    return function(params){   
        return $http.get('http://someurl/'+
            params.name+'/'+params.age+'/'+
            params.gender+'/'+params.status
        );
    }
};