Javascript Amazon S3 CORS仍不工作:否';访问控制允许原点';

Javascript Amazon S3 CORS仍不工作:否';访问控制允许原点';,javascript,amazon-web-services,amazon-s3,cors,Javascript,Amazon Web Services,Amazon S3,Cors,在尝试从Amazon S3服务器加载图像(crossorigin设置为anonymous)时,我们仍然会遇到可怕的错误: XMLHttpRequest cannot load http://resource-url No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://server-url' is therefore not allowed access.

在尝试从Amazon S3服务器加载图像(crossorigin设置为anonymous)时,我们仍然会遇到可怕的错误:

 XMLHttpRequest cannot load 
 http://resource-url No 
'Access-Control-Allow-Origin' header is present on the requested resource. Origin
'http://server-url' is therefore not allowed access.
我们已经尝试了几种CORS配置,例如

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>*</AllowedHeader>
    </CORSRule>
</CORSConfiguration>

. .
  • 对于Firefox。反应就是图像
  • 是CORS上的AFrame文档。但是,由于这些图像是从S3获取的,在Github页面上提供它们并不是一个真正的选项,因此可能没有什么用处
  • 我束手无策,任何帮助都将不胜感激。非常感谢你

    可能添加
    和。

    
    *
    头
    得到
    放
    邮递
    删除
    *
    

    添加上述xml代码后,您需要使缓存无效。

    尝试加载图像时(crossorigin设置为anonymous)
    -能否显示此代码,错误消息表明您正在使用
    XMLHttpRequest
    而不是“加载图像”你能检查一下请求头是否包含一个
    Origin
    头吗?我读到,如果没有Origin头,Amazon S3服务器将不会响应任何CORS头
    XMLHttpRequest正在发送一个CORS头
    -不确定你的意思,我从来没有说过XMLHttpRequest需要发送CORS头。。。CORS头由客户端接收,而不是发送
    我的意思是请求中包含CORS头
    同样,CORS头在响应中。。。使用浏览器开发人员工具网络选项卡。。。检查失败请求的请求/响应标头。。。具体地说(我在文档中能找到的所有内容)检查请求头是否包含
    来源
    头-如果没有这个,Amazon S3将不会使用CORS响应头进行响应(正如我前面提到的)
    这个问题存在于Chrome中,而不是Firefox
    -忽略我所说的一切。它在任何浏览器中都能工作,这意味着服务器端是正确的,而客户端至少在Firefox中是正确的。。。我很惊讶Chrome和Firefox的区别。。。获取资源的页面也是http://
    ?(不以https://
    为例)谢谢。我到处都在搜索症状,你在这里说的是根本原因。:)很高兴这有帮助,所有最好的@bfeistI不知道这是解决了它还是仅仅是使CloudFront无效的副作用。我在查看网络跟踪,它是一个GET请求,没有获取头,但它现在工作了,所以我投票:)再想想,也许CloudFront在提供缓存副本之前发送了一个头请求?我只能确定浏览器在GET上出现了故障。
    <?xml version="1.0" encoding="UTF-8"?>
    <CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
        <CORSRule>
            <AllowedOrigin>*</AllowedOrigin>
            <AllowedMethod>GET</AllowedMethod>
            <AllowedMethod>HEAD</AllowedMethod>
            <MaxAgeSeconds>3000</MaxAgeSeconds>
            <AllowedHeader>*</AllowedHeader>
        </CORSRule>
    </CORSConfiguration>
    
    <?xml version="1.0" encoding="UTF-8"?>
    <CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>HEAD</AllowedMethod>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <AllowedMethod>POST</AllowedMethod>
    <AllowedMethod>DELETE</AllowedMethod>
    <AllowedHeader>*</AllowedHeader>
    </CORSRule>
    </CORSConfiguration>