我当前正在处理读取
的错误 Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. The response had HTTP status code 404.
该请求在我的服务器上正常工作,但会破坏我的客户端。我最近找到了这个文件, public/crossdomain.xml
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<!-- Read this: www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html -->
<!-- Most restrictive policy: -->
<!-- <site-control permitted-cross-domain-policies="none"/> -->
<!-- Least restrictive policy: -->
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" to-ports="*" secure="false"/>
<allow-http-request-headers-from domain="*" headers="*" secure="false"/>
</cross-domain-policy>
虽然这看起来像我一直在寻找的修复程序,但我仍然被抛出同样的错误。没有像该服务器端这样的问题,我的客户端现在很大程度上匹配了我的服务器的配置。为什么该策略无法解决错误?我需要进一步配置此策略以接受所需的标头吗?
更新:这是客户端错误和服务器输出的摘要,当我尝试制作跨域请求
您唯一可以做的就是修改服务器以响应使用Access-Control-Allow-Origin
的HEAD
请求。这是一个浏览器安全功能,您无法从客户端网站进行修改。您必须在服务器上进行配置。
还验证您如何访问客户。原点应该是有效的域。
了解相同的原始政策和CORS。您是否真的想提出CORS请求?如果没有,请使用Ember Dev Server代理。