return this.http.post(this.url + '/' + endpoint, body, {headers: {
'customHeader1': 'changed',
'customHeader2': 'changed2'
}});
上面的代码段是我的http请求。我可以在没有header对象的情况下进行调用,但是我调用的端点在我设置这些头之前不会返回数据。添加这些标头会导致应用返回以下错误:
user.ts:50 ERROR TypeError: req.headers.forEach is not a function
如何解决此问题并在http请求中设置标题?
这些是我的导入
import { HttpClient, HttpParams } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Http, Response, RequestOptionsArgs, RequestMethod, Headers, Request
} from '@angular/http';
这是我的构造函数
constructor(public http: HttpClient) {}
答案 0 :(得分:1)
我通常使用'headers'
创建一个options对象let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers });
然后使用它
this.http.post(this.url + '/' + endpoint, body, options)
如下所述:https://www.concretepage.com/angular-2/angular-2-http-post-example