如何在Angular 6的HTTP请求中包含参数

时间:2018-08-07 16:55:23

标签: angular http angular-services angular-httpclient

我需要从Angular服务中调用以下端点https://sample_url?id=12345

UserService

getUsersByGroupID(id): Observable<User[]> {
 var url = 'https://sample_url';

 var params = new HttpParams();
 params = params.append('id', id);

 this.data = this.http.get<User[]>(url, {params: params}, this.httpConfig.getHeaderOptions()).pipe(catchError(this.handleError('getData', [])));
 return this.data;
}

在我的组件之一中,我应该做类似...

  this.userService.getUsersByGroupID(sys_id).toPromise().then(users => {
   this.users = users as User[]
}

但是我不确定如何正确地包含查询参数?id=。我尝试查看How to pass url arguments (query string) to a HTTP request on Angular,但并没有太大帮助。

谢谢。

1 个答案:

答案 0 :(得分:2)

getUsersByGroupID(id: number): Observable<User[]> {
    return this.http.get<User[]>("https://sample_url?id=" + id)
        .pipe(
             map(response => {
                 return response;
    }));
}