Javascript 如何正确实施CORS(访问控制允许来源)?
我想通过XMLHTTP请求(XHR、AJAX)访问第三方资源(在另一个域上) 我按如下方式设置CORS(两侧-目标和原点): Chrome、Firefox和Internet Explorer在启动XHR时拒绝使用它 最详细的错误消息来自Firefox: 无法加载XMLHttpRequest。“Access Control Allow Origin”标头包含多个值“,”,但只允许一个值。因此,不允许访问源“” 那个错误使我非常困惑。这就像“嘿,你是A,想和B说话,但B只接受A,B,所以你不能和B说话”。WTFJavascript 如何正确实施CORS(访问控制允许来源)?,javascript,ajax,xmlhttprequest,cors,access-control,Javascript,Ajax,Xmlhttprequest,Cors,Access Control,我想通过XMLHTTP请求(XHR、AJAX)访问第三方资源(在另一个域上) 我按如下方式设置CORS(两侧-目标和原点): Chrome、Firefox和Internet Explorer在启动XHR时拒绝使用它 最详细的错误消息来自Firefox: 无法加载XMLHttpRequest。“Access Control Allow Origin”标头包含多个值“,”,但只允许一个值。因此,不允许访问源“” 那个错误使我非常困惑。这就像“嘿,你是A,想和B说话,但B只接受A,B,所以你不能和B说
如何正确实施CORS(访问控制允许原点)?
访问控制允许原点
仅接受*
或单个原点
如果要支持多个来源,但不是所有来源,则必须:
访问控制允许原点
响应标题中您对资源使用的服务器端语言是什么?(ajax调用的服务)@Pete:双方都只是简单的静态HTML文件。啊,我的MVC服务有这个问题,必须将多个域的
访问控制允许源代码
更改为*
,然后在处理数据后只进行域检查,但由于您的是纯html,我不确定如何允许多个域访问控制允许源代码:
不受火狐。Firefox要求源代码完全匹配。请参阅:@Pete该站点表示当使用访问控制允许凭据时,Firefox中不支持访问控制允许来源:
(即)。这并不意味着Firefox通常不允许将*
作为允许的CORS来源。(该网站特别关注如何为WebDAV设置CORS,这需要经过认证的请求。)您可以安全地继续使用访问控制允许源代码:
通常。您指的是由服务器动态生成访问控制允许源代码
?
Access-Control-Allow-Origin: http://www.example.com, https://www.example.com, http://www.example.org, https://www.example.org
Access-Control-Allow-Methods: GET, POST, HEAD, OPTIONS