我正在使用restangular来使用与角度文件在同一服务器上托管的api。对api的所有请求都是Access-Control-Allow-Origin错误不允许获取Origin。我试过在配置
中改变标题$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
并更新角度/ restangular。有没有办法使用restangulars setdefaultheaders方法设置相同域请求的标头?
答案 0 :(得分:4)
您获得的错误是由于您的Web服务器的跨源资源共享(CORS)策略造成的。
同一服务器上的资源是不够的。它们必须由同一主机提供服务。
重要的是要了解api.mydomain.com
与www.mydomain.com
不同。
另外,使用不同的端口(api.mydomain.com
vs api.mydomain.com:9000
)会使其成为不同的主机。
检查服务器响应的响应是否包含HTTP标头:
"Access-Control-Allow-Origin: api.yourdomain.com"
要查看如何在网络服务器上启用CORS,请查看此有用的网站:enable_cors.org
您可以阅读有关CORS
的更多信息