如何在 Typescript 和 angular 2 中向 http.get 或 http.post 添加标题? [英] How I add Headers to http.get or http.post in Typescript and angular 2?
本文介绍了如何在 Typescript 和 angular 2 中向 http.get 或 http.post 添加标题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
getHeroes (): Observable<Heros[]> {
return this.http.get(this.heroesUrl)
.map(this.extractData)
.catch(this.handleError);
}
在哪里添加标题以及如何添加?寻找一个简单的例子.
Where I add the headers and how? looking for a simple example.
推荐答案
您可以定义一个 Headers 对象与 HTTP 键/值对字典,然后将其作为参数传递给 http.get()
和 http.post()
像这样:
You can define a Headers object with a dictionary of HTTP key/value pairs, and then pass it in as an argument to http.get()
and http.post()
like this:
const headerDict = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Access-Control-Allow-Headers': 'Content-Type',
}
const requestOptions = {
headers: new Headers(headerDict),
};
return this.http.get(this.heroesUrl, requestOptions)
或者,如果是 POST 请求:
Or, if it's a POST request:
const data = JSON.stringify(heroData);
return this.http.post(this.heroesUrl, data, requestOptions);
从 Angular 7 开始,你必须使用 HttpHeaders
类而不是 Headers
:
Since Angular 7 and up you have to use HttpHeaders
class instead of Headers
:
const requestOptions = {
headers: new HttpHeaders(headerDict),
};
这篇关于如何在 Typescript 和 angular 2 中向 http.get 或 http.post 添加标题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文