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

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

 

跨域是什么,及新版本浏览器安全机制,一篇相对权威详细的介绍文档:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS


别走开,这篇文章能解决你不少问题

 

记录一次使用阿里云oss跨域问题,

 

问题:直播流地址播放,个别电脑的个别浏览器(这里是chrome,版本81.0.4044.138, 64)请求不到视频流,控制台报错是跨域(No 'Access-Control-Allow-Origin'”),当时情况(大部分电脑没问题,阿里云控制台已经设置了跨域)。

 

阿里云给的解决:https://help.aliyun.com/knowledge_detail/39518.html?spm=a2c4g.11186623.2.25.5c77c451UV4ZPS

 

阿里云的解决方式就是在后台设置允许跨域,(*),全部允许跨域。

 

解决方案:正在解决,稍后同步。

 

 

时间2020-0508-11:41。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

现在是202005091345 问题已经定位到,是chrome新版本的安全策略,如果你想用,执行以下步骤,但是,你不能指望所有用户都执行以下步骤。

Chrome浏览器开启Ajax跨域访问调试

在当今前后端分里模式开发越来越多,使用Ajax进行数据交互时常有跨越发生。

  本文说明如何让Chrome浏览器支持开发时的Ajax跨域访问。

1.升级Chrome到最新版本

参考下面经验"如何离线安装Chrome最新版本或某一特定版本?",将Chrome升级到最新版本。

如何离线安装Chrome最新版本或某一特定版本?

 

2.方法一,创建一个调试用的Chrome快捷方式(这种方式治标不治本,用户不会统一改的,除非你放弃他们,看后续...)

右键选择Chrome快捷方式,在弹出的右键菜单中选择"创建快捷方式",重命名新建的快捷方式为Chrome-Debug

技术分享图片技术分享图片

 

3.打开Chrome-Debug快捷方式属性

右键选择Chrome-Debug快捷方式,右键菜单中选择"属性",打开Chrome-Debug快捷方式属性设置对话框。

技术分享图片

 

4.增加启动参数

在目标后面增加如下的启动参数:--user-data-dir="c:\ChromeDebug" --test-type --disable-web-security ,点"确定"按钮保存设置。完整的目标内容如下所示:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="c:\ChromeDebug" --test-type --disable-web-security

注:

  • 每个--前面都有一个空格。
  • disable-web-security需要搭配user-data-dir参数一起设置。

 

5.打开Chrome-Debug

因为启动参数中增加了--user-data-dir="c:\ChromeDebug",表示Chrome会从c:\ChromeDebug中存取用户数据,因该目录可能为空,所以新打开的Chrome-Debug窗口是一个全新的Chrome,没有书签、历史、扩展程序等内容,需要再重新安装扩展程序。

技术分享图片

 

6.调试跨域访问

再次打开之前出错的程序,就可以发现Ajax已经可以正常跨域访问了。

 

参考自百度经验

 

------------------------------------------------------------------------------------------------------------------------------------------------

待续...

------------------------------------------------------------------------------------------------------------------------------------------------

 

现在是202005101723

这个问题的原因是,使用了非阿里云播放器。

据前端解释,阿里云播放器播放阿里云播放流,前端js有后门。使用其他播放器会有跨域问题。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JavaPub-rodert

谢谢老板

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值