【发布时间】:2019-07-15 11:05:47
【问题描述】:
我想要一个带有外部服务器的 API。当我使用邮递员程序时,很容易回答。但是当我在 Angular 代码中执行此操作时,它会响应以下错误:
Access to XMLHttpRequest at 'https://api.smartship.io/ship/rates' from origin 'http://127.0.0.1:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
我的服务:
let api_url = this.api_url_flagship + '/con';
let headers = new HttpHeaders({
'x-smartship-token': this.token_flagship,
'Content-Type': 'application/json'
});
const httpOptions = {
headers
};
return this.httpClient.post(api_url, data, httpOptions)
.map(
(response: Response) => {
const data = response.json();
return data;
}
)
.catch(
(error: Response) => {
let rr = error.json();
return Observable.throw(rr);
}
);
【问题讨论】:
-
与 CORS 问题的其他人一样 - 您需要代理,或者为您的客户端正确配置服务器。
-
@jonrsharpe 我应该联系服务器接受域
标签: angular api httpclient