首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular 7 Http get请求发送对象作为参数

Angular 7 Http get请求发送对象作为参数
EN

Stack Overflow用户
提问于 2019-07-16 16:04:47
回答 1查看 3K关注 0票数 1

这就是我需要发送请求的方式。

代码语言:javascript
复制
localhost:8080/api/user?id=53380&name=raj&start=1&rows=5

其中id=53380&name=raj是一个对象。

尝试设置参数并发送,如下所示。

代码语言:javascript
复制
 let params: URLSearchParams = this.objToSearchParams(this.search); // this.search =  {id: 53380, name: raj}
 params.set("start", 1);
 params.set("rows", 5)

     return this._http.get('/api/user', {params: params})
                .map(response => response['result'])
                .catch(this.handleError);


 objToSearchParams(obj): URLSearchParams{
    let params: URLSearchParams = new URLSearchParams();
    for (var key in obj) {
        if (obj.hasOwnProperty(key))
            params.set(key, obj[key]);
    }
    return params;
 }

这不会发送任何请求这是执行此代码后的API调用

代码语言:javascript
复制
localhost:8080/api/user

没有参数发送。我如何才能做到这一点?是否需要逐个手动转换?

EN

回答 1

Stack Overflow用户

发布于 2019-07-16 16:27:13

要做这样的事情:

代码语言:javascript
复制
getCustomerByCustomerName(customerName : string):Observable<Customer[]>{
    return this.http.get<Customer[]>(`${this.api.catchApiUrl()}Customer/GetCustomerByCustomerName?customerName=${customerName}`)
}

您可以这样做:

代码语言:javascript
复制
getCustomerByCustomerName(custName : string):Observable<Customer[]>{
    return this.http.get<Customer[]>(`${this.api.catchApiUrl()}Customer/GetCustomerByCustomerName`,{
      params : {
        customerName : custName
      }
    })
}

试着一个参数一个参数地做,如果行得通,就把它放在一个对象中。

我找到了this也许你能找到你需要的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57052715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档