我使用 HLS 使用 Amazon S3 和 Cloud Front 使用 JWplayer 。 (使用Rails)
我使用签名URL加密URL并创建了Amazon Cloud Front文档中给出的Origin Access Identity。 签名网址生成正常。
我的存储区中还有一个' crossdomain.xml' 文件,该文件允许所有来源(我已经给出了' *') 现在,当我尝试从我的桶中播放我的Hls视频文件时,我得到跨域访问被拒绝的问题
我认为JW Player正试图访问' crossdomain.xml'没有签名哈希的文件。所以,它得到了这个错误。
我在演示JWplayer Stream测试器中测试了我的文件,这是我在控制台中遇到的错误。
Fetch API cannot load http://xxxxxxxx.cloudfront.net/xxx/1/1m_test.ts.
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://demo.jwplayer.com' is therefore not allowed access.
The response had HTTP status code 403.
If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
这是ScreenShot。
请帮帮我。谢谢。
This is the link I followed to configure my CloudFront Distribution
答案 0 :(得分:2)
我遇到了同样的问题(但是使用了Flowplayer)。我还不确定安全风险(如果需要所有步骤的话),但我得知它运行:
编辑: 我还运行了hlsjs并使得crossdomain.xml可以以某种方式禁用CORS请求。我还在调查这个。