Angular 使用HttpClient并添加多个参数以获取
在这里使用Angular6 我的API称为:Angular 使用HttpClient并添加多个参数以获取,angular,Angular,在这里使用Angular6 我的API称为: https://localhost:44300/list/pete/id/open 在我的示例中,我将此API称为: getData(name, id, status): Observable<any[]> { // Initialize Params Object let params = new HttpParams(); // Begin assigning parameters pa
https://localhost:44300/list/pete/id/open
在我的示例中,我将此API称为:
getData(name, id, status): Observable<any[]> {
// Initialize Params Object
let params = new HttpParams();
// Begin assigning parameters
params = params.append('name', name);
params = params.append('id', id);
params = params.append('status', status);
return this.httpClient.get<any[]>(this.url + '/list', { params: params });
}
此调用与我实际的API调用不同。如何进行更改并正确传递参数
--更新代码--
你忘了倒勾(`)
getData(名称、id、状态):可观察的params用于查询参数。不适用于路径参数。只要将它们连接起来就可以形成最终路径。@JBNizet我现在知道参数是用于查询的。但我不明白我该如何连接它们。你能举个例子吗。我是否像返回this.httpClient.get(this.URL+'/list'+name+'/'+id+'/'+status)那样构造URL;对您还可以使用模板字符串,使用反勾号作为分隔符:${this.url}/list/${name}/${id}/${status}
@jbnize查看我更新的帖子当我按原样使用代码时出现的错误。看起来我在这里遗漏了什么?关键字是抱歉,当我执行上述操作时,我在控制台中看到它对我的api的调用是:“哪个错误是因为它不正确?”
https://localhost:44300/list?name=pete&id=981&status=open
getData(name, id, status): Observable<any[]> {
return this.httpClient.get<any[]>(${ this.url } / list / ${ name } / ${ id } / ${ status });
}
Cannot find name $
Expected 1 or 2 arguments, but got 5
The left hand side of arithmetic operation must be of type any, number, bigint, enum type
',' expected
getData(name, id, status): Observable<any[]> {
return this.httpClient.get<any[]>(`${this.url}/list/${name}/${id}/${status}`);
}