• Welcome to Journal web site.

我是 PHP 程序员

- 开发无止境 -

Next
Prev

设置跨域规则后调用OSS时仍然报“No 'Access-Control-Allow-Origin'”的错误 - 阿里云

Data: 2014-06-27 18:00:06Form: JournalClick: 7

设置跨域规则后调用OSS时仍然报“No 'Access-Control-Allow-Origin'”的错误
设置跨域规则后调用OSS时仍然报“No 'Access-Control-Allow-Origin'”的错误 - 阿里云

 

问题描述

在OSS控制台设置了跨域CORS规则后,通过JS程序调用时仍然报如下错误。

No 'Access-Control-Allow-Origin' header is present on the requested resource

问题原因

问题原因可能如下:

  • 跨域CORS规则设置异常
    未正确设置CORS规则。
  • 浏览器缓存
    设置了CORS跨域规则,但是存在浏览器缓存,导致读取了缓存中未含有跨域头的Response Header。

解决方案

不同的问题原因对应的解决方法不同,建议先清除浏览器缓存进行测试。如果仍然报错,则参考如下步骤排查CORS跨域规则是否设置正确:

  1. 登录OSS控制台的Bucket列表。单击目标Bucket,进入Bucket概览页面。
  2. 在左侧导航栏中选择权限管理 > 跨域设置,然后单击设置
  3. 确保当前规则中的来源包含调用OSS的来源信息,并且允许MethodsGETPOSTHEAD。关于如何设置跨域规则,请参见设置跨域访问。
  4. 如果当前跨域规则设置正确,报错仍然存在。则单击规则右侧的编辑按钮,检查 允许 Headers 设置。可将其设置为星号(*)并保存设置,测试问题是否解决。
    2

相关文档

  • OSS跨域资源共享(CORS)相关问题请参考常见错误及解决方案。

适用于

  • 对象存储OSS

Name:
<提交>