因此,我有一个网站可以通过API调用从其他网站获取一些内容。我已在Amazon S3存储桶设置中启用了CORS配置,并添加了以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>https://mywebsite.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<ExposeHeader>Access-Control-Allow-Origin</ExposeHeader>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
但是,浏览器反馈提到我仍然不允许跨源。
在此配置中我忘记了什么?
答案 0 :(得分:1)
我犯了一个愚蠢的错误,但以某种方式认为我可能不是唯一的一个。因此,我将分享遇到相同问题的人的经历。
如果您的 www.domain.com 需要获取一些文件或必须进行一些API调用来自 www.domain2.com ;那么domain2必须允许CORS,而不能相反。
www.domain.com <-----获取文件<----- www.domain2.com(具有Access-Control-Allow-Origin)
因为幸运的是第二个域在我的同样收费,我只是在.htaccess中添加了以下内容:
Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Methods: "GET,POST,OPTIONS,DELETE,PUT"