尝试将自定义属性添加到HttpHeader请求,但似乎未发送。
getUserInfo(){
this.headers.append('CustomerId', 'ad34e1b2');
return this._http.get(this.baseUrl+"getInfo",{ headers:this.headers });
}
答案 0 :(得分:1)
如果检查post()
模块的HttpClient
方法参数,您将看到如下可接受的参数:
/**
* @license
* Copyright Google Inc. All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
/**
* Construct a POST request which interprets the body as JSON and returns the full response.
*
* @return an `Observable` of the `HttpResponse` for the request, with a body type of `Object`.
*/
post(url: string, body: any | null, options: {
headers?: HttpHeaders | {
[header: string]: string | string[];
};
observe: 'response';
params?: HttpParams | {
[param: string]: string | string[];
};
reportProgress?: boolean;
responseType?: 'json';
withCredentials?: boolean;
}): Observable<HttpResponse<Object>>;
表示该函数接受url
,body
和options
作为主要的可接受参数。您可以通过创建一个接受标头名称和值的函数来指定自定义标头。如果是单个自定义标头,则是这样,如果是多个标头,则可以自由编写自己的函数版本。
private setHeaders(customHeader: string, value: string): HttpHeaders {
const headers: HttpHeaders = new HttpHeaders({
customHeader: value,
});
return headers;
}
并且最近不要忘记导入这些库。
import { HttpClient, HttpHeaders } from '@angular/common/http';
答案 1 :(得分:0)
您需要导入新的HttpHeaders
import { HttpClient, HttpHeaders } from '@angular/common/http';
在您的函数中创建它的一个实例
let headers = new HttpHeaders();
headers.append('CustomerId', 'ad34e1b2');
或创建多个可以添加的内容
let headers = new HttpHeaders(
{'abc':'22',
'abc2':'111',
'abc4':'444'}
);