跨域是什么?

跨域访问,或者说JavaScript的跨域访问问题,是浏览器出于安全考虑而设置的一个限制,即同源策略。当A、B两个网站属于不同域的时候,来自于A网站页面中的JavaScript代码希望访问B网站时,浏览器会拒绝该访问。

场景

使用播放器播放m3u8,提示跨域错误。

排查

  • 查看是否添加策略文件。

    播放器跨域访问时需要添加策略文件,即在视频播放链接所在域名的根目录下添加crossdomain.xml文件,其中添加播放器所在域名的权限。

    例如:http://test1.com/app/test.m3u8需要添加http://test1.com/crossdomain.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <cross-domain-policy>
        <allow-access-from domain="*"/>
        <allow-http-request-headers-from domain="*" headers="*" secure="false"/>
    </cross-domain-policy>
  • HTTP头是否配置。

    视频直播控制台进入域名管理页面,找到相应域名配置HTTP消息头。找到Access-Control-Allow-Origin,并配置为*或需要访问的完整域名,例如www.alliyun.com。具体操作请参见配置HTTP消息头

    说明 跨域配置仅支持配置为*或单个域名,如需多域名跨域访问请配置为*