问题现象
-
OPTIONS http://bucket.oss-cn-beijing.aliyuncs.com/ XMLHttpRequest cannot load http://bucket.oss-cn-beijing.aliyuncs.com/. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '{yourwebsite}' is therefore not allowed access. The response had HTTP status code 403.
-
OSS报CORS请求不允许的错误,具体如下:
AccessForbidden
CORSResponse: This CORS request is not allowed. This is usually because the evaluation of Origin, request method / Access-Control-Request-Method or Access-Control-Request-Headers are not whitelisted by the resource's CORS spec.
可能原因
说明
-
CORS报错一般是站点类应用导致,浏览器中可以查看请求详情。例如在Chrome浏览器按F12打开开发者工具 ,在Network页签中查看相应元素。
-
OSS返回的错误可以通过抓包获取。如果使用Wireshark抓取和分析数据,则筛选器可以指定为host bucket-name.oss-cn-beijing.aliyuncs.com。
解决方案
按照以下步骤正确配置跨域规则。
-
登录OSS管理控制台。
-
单击Bucket 列表,然后单击目标Bucket名称。
-
在左侧导航栏,选择数据安全 > 跨域设置。
-
在跨域设置页面,单击创建规则。
-
在创建跨域规则面板,按以下说明配置各项参数,其他参数保留默认配置。
-
来源:设置为*。
-
允许Methods:选中GET、POST、PUT、DELETE、HEAD。
-
允许Headers:设置为*。
-
暴露Headers:设置为指定值或者不填。
-
-
单击确定。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/157241.html