首页 > 解决方案 > Vimeo 视频突然在 Chrome 中抛出 CORS 错误

问题描述

本周早些时候,我们在测试和生产环境中使用的视频内容使用https://player.vimeo.com/external/ ..。链接,在加载视频的第一部分后,在控制台中抛出了一堆 CORS 错误。

示例错误: “Access-Control-Allow-Origin”标头的值“null”不等于提供的来源。

我们向 player-vimeo.com 发出的初始请求确实具有Access-Control-Allow-Origin: *,正如我们的应用程序配置所预期的那样。然而,那个 player-vimeo 返回一个 302 重定向到 CDN https://vod-progressive.akamaized.net并且我们从那里得到的响应有Access-Control-Allow-Origin: null

几个月来,我们没有更改有关此视频内容的任何代码,并且我们已经以这种方式使用 Vimeo 很长时间了。它似乎发生在 Chrome 中,但在 FireFox 或 Mac 中不会发生或很少发生。到目前为止,我们发现的唯一解决方案是从视频标签中删除属性crossorigin="anonymous",但这并不理想,因为它会破坏与视频关联的字幕文件的获取。

奇怪的是,如果你让视频连续多次抛出 CORS 错误,它实际上会在它抛出足够多次错误后开始工作。

据我们所知,我们所做的一切都不会导致这种破坏,似乎 Vimeo 不再传递 Access-Control-Allow-Origin 参数,或者以某种方式 akamaized.net 正在丢失它。

更新我们在 2021 年 6 月 10 日收到了 Vimeo 支持的回复:

“这是我们的开发人员意识到并正在努力解决的问题。对于给您带来的任何不便,我们深表歉意,并感谢您的耐心等待。

解决此问题后,我们将与您联系。”</p>

标签: google-chromesecurityvideocorsvimeo

解决方案


推荐阅读