如何在角度服务中将接口作为参数发送给HTTP获取请求

问题描述

难以将接口作为HTTP get请求的参数传递

sample.service.ts

 export interface Product{
    Id:any;
    product : any;
   }

public getProduct(item:Product): Observable<any> {
    const base = this.http.get('/api/getproducts',item);
    const request = base.pipe(
      map((data: TokenResponse) => {
        console.log('display data==>',data);
          return data;
      })
    );
    return request;
  }

sample.component.ts

 this.ps.getProduct(this.product).subscribe(
      data => {
               console.log("results",data.results)
             });

预先感谢

解决方法

使用HttpParams传递参数,如下所示:

const headers = new HttpHeaders().append('header','value');
const params = new HttpParams().append('Id',item.ID);
const params = new HttpParams().append('product',item.product);
this.http.get('url',{headers,params});