我尝试在带参数的Angular http.get中使用
我要获取(数据)
getAllVM(data) {
console.log('data', data, 'params' ,(getParamString(data)));
return this.http.get(environment.apiEndpoint + '/vendorMachine', {params: {filters: data}});
}
结果为consol.log =>
data {status: Array(0), groups: Array(1)}groups: [2]status: []__proto__: Object params ?status=&groups=2
在我发送的标题中:
?filters=%5Bobject%20Object%5D
我该如何更改才能更正?
答案 0 :(得分:1)
Angular不提供过滤器作为选项。
https://angular.io/api/common/http/HttpClient
改为使用此:
this.http.get($(environment.apiEndpoint)/vendorMachine?filters=${data}
)
如果data是json,请使用JSON.stringfy(data)
答案 1 :(得分:1)
将以下获取参数添加到您的http获取请求中。
getAllVM(data) {
const params = new HttpParams().set('filters', JSON.stringify(data));
return this.http.get(environment.apiEndpoint + '/vendorMachine', { params: params });
}