首页 >web前端 >js教程 >为什么我收到 XMLHttpRequest 错误:\'No \'Access-Control-Allow-Origin\' 标头存在?

为什么我收到 XMLHttpRequest 错误:\'No \'Access-Control-Allow-Origin\' 标头存在?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-04 03:10:02457浏览

Why Am I Getting an XMLHttpRequest Error: 'No 'Access-Control-Allow-Origin' Header Present?

XMLHttpRequest 错误:'不存在'Access-Control-Allow-Origin'标头

在此项目中,www 上托管的 XML 文件货币换算参考 .ecb.europa.eu。但是由于同源策略,出现了错误。

同源策略禁止跨域请求。在这种情况下,HTML 页面位于与 XML 文件 (ecb.europa.eu) 不同的域(例如 run.jsbin.com)。因此,该请求被视为跨源资源共享(CORS)请求

CORS通信

要启用CORS,服务器响应请求必须包含特定标头,包括“Access-Control-Allow-Origin”。

  • 浏览器发送带有“Origin”标头的请求,指示 HTML 页面的域。
  • 如果服务器响应的“Access-Control-Allow-Origin”标头与源匹配,则允许该请求。否则,请求将被阻止。

修复错误

要解决此问题,需要配置 XML 文件服务器以添加“Access-”其响应的 Control-Allow-Origin 标头。该标头可以设置为同源(例如“Access-Control-Allow-Origin: http://run.jsbin.com”)或“*”以允许从任何源进行访问。

如果服务器端配置是不可能的,可以使用镜像代理来拦截请求并在将其转发到实际服务器之前添加必要的标头。

以上是为什么我收到 XMLHttpRequest 错误:\'No \'Access-Control-Allow-Origin\' 标头存在?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn