如何在 Angular2 中将 Headers 添加到 http.get 请求?

How to add Headers to http.get request in Angular2?

   import {Http, Response, Headers}          from '@angular/http'; 

getHeroes (): Observable<Heros[]> {
        return this.http.get(this.heroesUrl,  {withCredentials: true}
        )
          .map(this.extractData)
          .catch(this.handleError);
      }

不明白 headers 的来源和方式。

var myHeaders = new Headers();
myHeaders.append('Access-Control-Allow-Origin', '*')

它们是如何组合的?

这就是您需要将 headers 添加到 http 请求的方式

import {Headers, RequestOptions} from 'angular2/http';

let body = JSON.stringify({ 'foo': 'bar' });
let headers = new Headers({ 'Access-Control-Allow-Origin': '*' });
let options = new RequestOptions({ headers: headers });

return this.http.post(url, body, options)
                .map(res =>  res.json().data)
                .catch(this.handleError)

//单个和多个headers都可以发送

import { Http, Headers, RequestOptions } from '@angular/http';

const Url = 'http://localhost:3000/';
const headers = new Headers;
const body = JSON.stringify(
{
title: "data" 
});
headers.append('Content-Type', 'application/json');
headers.append('Access-Control-Allow-Origin', '*');
this.http.post(Url, body, { headers: headers })
.pipe(map(res => res))
.catch(err => err);

// HttpHeaders in angular 5

import { HttpHeaders } from '@angular/common/http';

let header = new HttpHeaders();
header.set('Content-Type', 'application/json');