小编maj*_*123的帖子

Video.js - HLS => 没有“Access-Control-Allow-Origin”标头 [S3、CloudFront]

我在应用程序中使用 video.js 插件播放 HLS 视频时遇到问题。我有一个 HLS 视频(.m3u8、.ts)的 S3 存储,并将其连接到 cloudfront。视频在 safari 上可以正常工作,但在 Chrome 上无法正常工作。当我硬重新加载页面(删除缓存、cookies...)时,它们就可以在 chrome 上工作。

在此输入图像描述

在此输入图像描述

我的配置:

视频.JS:

videojs.Hls.xhr.beforeRequest = function (options) {
      options.headers = {
        "Access-Control-Allow-Origin": "*",
      };
      return options;
    };
Run Code Online (Sandbox Code Playgroud)

S3 存储桶 CORS:

[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "GET",
            "PUT",
            "POST",
            "HEAD"
        ],
        "AllowedOrigins": [
            "*"
        ],
        "ExposeHeaders": [
            "ETag",
            "Access-Control-Allow-Origin",
            "Connection",
            "Content-Length"
        ],
        "MaxAgeSeconds": 3000
    }
]
Run Code Online (Sandbox Code Playgroud)

云前:

云锋

云锋

amazon-s3 http-live-streaming cors amazon-cloudfront video.js

4
推荐指数
1
解决办法
3643
查看次数