Javascript 如何在AngularAPI请求中传递x-api-key in头?
我正试图在标题中发送Javascript 如何在AngularAPI请求中传递x-api-key in头?,javascript,angular,Javascript,Angular,我正试图在标题中发送x-api-key标题,如下所示 服务台 import { Injectable } from '@angular/core'; import { Http, Headers, RequestOptions, Response } from '@angular/http'; import { Observable } from 'rxjs/Observable'; import 'rxjs/add/operator/map'; @Injectable() export cl
x-api-key
标题,如下所示
服务台
import { Injectable } from '@angular/core';
import { Http, Headers, RequestOptions, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/map';
@Injectable()
export class InsuranceServiceService {
public token: string;
constructor(private http: Http) {
const currentUser = JSON.parse(localStorage.getItem('currentUser'));
this.token = currentUser && currentUser.token;
}
createAuthorizationHeader(headers: Headers) {
headers.append('Content-Type', 'application/json');
headers.append('x-api-key', `xxxxxxxxxxxxxxxxxxxx`);
}
sendOTP(data: object): Observable<Object[]> {
const header = new Headers();
this.createAuthorizationHeader(header);
return this.http.post('http://my-omain.com/', data,
{
headers: header
})
.map((response: Response) => response.json());
}
}
从'@angular/core'导入{Injectable};
从'@angular/Http'导入{Http,Headers,RequestOptions,Response};
从“rxjs/Observable”导入{Observable};
导入'rxjs/add/operator/map';
@可注射()
出口类保险服务{
公共令牌:字符串;
构造函数(专用http:http){
const currentUser=JSON.parse(localStorage.getItem('currentUser');
this.token=currentUser&¤tUser.token;
}
createAuthorizationHeader(标题:标题){
headers.append('Content-Type','application/json');
headers.append('x-api-key','xxxxxxxxxxxxxxxxx`);
}
sendOTP(数据:对象):可观察{
常量头=新头();
此.createAuthorizationHeader(header);
返回此.http.post('http://my-omain.com/",数据,,
{
标题:标题
})
.map((response:response)=>response.json());
}
}
但是,我得到了以下错误:
飞行前响应中的访问控制允许标头不允许请求标头字段x-api-key
如何解决这个问题?是否有其他方法传递
x-api-key
?这是服务器端的问题,您必须将服务器配置为允许所需的标头,搜索“CORS允许标头”这不是一个具体的解决方案。为什么要添加它作为答案?应该是IMOThx@amd的评论,这很有帮助