跨域加载Google Cloud视频时Content Security Policy配置问题
问题解决:Google Cloud视频加载的CSP配置修正
你的问题核心是Content Security Policy (CSP) 的media-src路径匹配规则导致的资源拦截,以下是具体解决方案:
错误原因
- 当前配置的
https://storage.googleapis.com/myCloudFolder缺少末尾斜杠,浏览器无法正确识别为文件夹前缀,无法匹配该文件夹下的具体视频文件(如/myCloudFolder/someVideo.mp4)。 - 错误日志显示你曾配置
http协议,但实际请求的是https协议,协议不匹配也会触发CSP拦截。
正确的media-src配置方案
选择以下任意一种即可:
方案1:允许整个Google Cloud Storage域名(简单通用)
适合需要加载该域名下多个资源的场景:
media-src 'self' https://storage.googleapis.com blob:;
方案2:精确允许目标文件夹下的所有资源(更安全)
通过末尾斜杠限定仅匹配myCloudFolder文件夹内的子资源:
media-src 'self' https://storage.googleapis.com/myCloudFolder/ blob:;
额外注意事项
- Node.js重定向代码中的目标URL是
https协议,因此CSP必须使用https(或用协议相对URL//storage.googleapis.com/myCloudFolder/,自动适配页面协议)。 - 301重定向后,浏览器会检查最终的视频URL是否符合CSP规则,因此必须确保最终URL被media-src规则覆盖。
内容的提问来源于stack exchange,提问作者Sunny
相关产品推荐
相关产品推荐

