Angular 2 - Chrome和IE(11)CORS问题

时间:2017-01-16 21:54:09

标签: angular

我正在运行angular 2 app(使用angular-cli)并进行服务器API调用(其中所有(*)的CORS访问都在API代码中实现)。

现在,当我尝试从角度2应用程序进行API调用时,有时我从服务器获得响应,根本没有CORS问题,有时我遇到问题:

对于Chrome浏览器:

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

XMLHttpRequest cannot load https://server.com/api/currency.
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'http://localhost:4200' is therefore not allowed access. The response had HTTP status code 500.

对于IE(11)浏览器

SEC7120: Origin http://localhost:4200 not found in Access-Control-Allow-Origin header.
File: localhost:4200
SCRIPT7002: XMLHttpRequest: Network Error 0x80070005, Access is denied.
File: localhost:4200

对于上述浏览器,响应头返回

Response : HTTP/1.1 500 Interenal Server Error
Content-Length : 0

我还尝试清除浏览器缓存,但它没有按预期工作,并且再次遇到问题。

非常感谢上述任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:2)

您的后端存在问题。您收到的消息是local,这意味着在那里发生了一些异常,这就是没有为响应设置正确标头的原因。

检查apache日志以找出那里发生的事情。