[英]AngularJS : No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access
[英]AngularJS: No 'Access-Control-Allow-Origin' header is present on the requested resource
在我的客户端代码中,我正在使用AngularJS $ http发送GET请求以从后端服务器获取一些数据。 默认情况下,后端服务器不会在响应头中放置“ Access-Control-Allow-Origin”。
当我通过Chrome发送此请求时,出现错误:
No 'Access-Control-Allow-Origin' header is present on the requested resource
Web服务器和后端服务器都在具有不同端口号的同一台计算机上运行。
当我安装了Chrome插件以启用跨域资源共享时,它运行良好。 但是,我想通过仅更改我的AngularJS客户端代码来使其工作,而不更改Web Bower的设置和后端服务器的代码。 是否有可能做到这一点?
谢谢
您需要在您的php页面开始处添加它
<?php header('Access-Control-Allow-Origin: *'); ?>
对于.NET服务器,可以在web.config中进行如下配置
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="http://www.makemypublication.com" />
</customHeaders>
</httpProtocol>
<system.webServer>
或者,当您想进行跨域请求时,您需要做一些不同的事情。 有关如何实现此目标的教程是使用CORS 。
使用邮递员时,它们不受此政策的限制。 引用自跨域XMLHttpRequest :
常规网页可以使用XMLHttpRequest对象从远程服务器发送和接收数据,但是它们受同一原始策略的限制。 扩展不受限制。 扩展可以在其起源之外与远程服务器通信,只要它首先请求跨域许可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.