我正在运行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
我还尝试清除浏览器缓存,但它没有按预期工作,并且再次遇到问题。
非常感谢上述任何帮助。
谢谢!
答案 0 :(得分:2)
您的后端存在问题。您收到的消息是local
,这意味着在那里发生了一些异常,这就是没有为响应设置正确标头的原因。
检查apache日志以找出那里发生的事情。