Javascript 未发送角度Http参数
我正在尝试使用以下方法发出get请求:Javascript 未发送角度Http参数,javascript,angular,http,Javascript,Angular,Http,我正在尝试使用以下方法发出get请求: let ht = new HttpHeaders({ 'Content-Type': 'application/json', 'Authorization': 'my-auth-token', 'params': '{where:{id: 1}}' }); return this.http.get(environment.apiUrl + route, {headers: ht}); 请求通过,但没有发送参数。有人能告诉我
let ht = new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'my-auth-token',
'params': '{where:{id: 1}}'
});
return this.http.get(environment.apiUrl + route, {headers: ht});
请求通过,但没有发送参数。有人能告诉我我做错了什么吗
尝试类似的方法,认为参数是额外的,并且在发送请求时不是头的一部分
let ht = new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'my-auth-token',
});
let p = {where:{id: 1}};
return this.http.get(environment.apiUrl + route, {headers: ht, params: p});
您必须使用http中的HttpParams向api调用发送额外的参数
import {HttpHeaders, HttpParams } from '@angular/common/http';
let ht = new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'my-auth-token',
});
//Create new HttpParams
let p= new HttpParams().
set("param1",p1).
set("param2", p1);
return this.http.get(environment.apiUrl + route, {headers: ht, params: p});
您是真的想发送一个名为params的头,还是指那些作为查询参数的头(在这种情况下,请参见)?如果params指的是头,则它们不在
OPTIONS
请求中发送是正常的。如果CORS设置允许的话,它们将显示在后续的GET请求中。您好,这看起来有点乏味,是不是有更好的方法可以代替:。set('filter','{“where”:{“id”:1}});您应该只传递参数中的数据。无论您需要什么逻辑,都可以在调用api的服务器中实现。