从客户端启用角度为5的Access-Control-Allow-Origin

时间:2018-03-07 17:44:10

标签: angular typescript cors access-control

我正在使用httpClient角度包来获取请求。我使用https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes url来获取数据。它在控制台中给出了CORS错误。

我无法访问服务器端代码,但我仍想在角度服务中使用CORS。这是我的服务功能

myfunction() {
  let head = new HttpHeaders();
  head.append('Access-Control-Allow-Headers', 'Content-Type');
  head.append('Access-Control-Allow-Methods', 'GET');
  head.append('Access-Control-Allow-Origin', '*');
  return this.http.get("https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes", {headers: head}).toPromise();
}

我已经使用chrome cors extension进行了尝试,它运行正常。但我希望通过角度代码启用它。

我还尝试使用代理tutorial。 BUt它仍然无法正常工作。这是我在 proxy.conf.json 文件中的对象。

{
  "/api": {
    "target": "https://www.independentreserve.com/Public/GetValidPrimaryCurrencyCodes",
    "secure": false
  },
  "changeOrigin": true
}

并在package.json文件中添加" start":" ng serve --proxy-config proxy.conf.json" 。它也不是这样工作的。

任何人都能给我一些解决方案吗?

1 个答案:

答案 0 :(得分:2)

您无法在客户端上设置响应标头,只有服务器才能这样做。 IE浏览器。如果您无法更改服务器端,则唯一的选择是添加您在其间控制的代理服务器。