http-live-streaming - HLS Fairplay DRM 内容我使用 videojs 和 videojs-contrib-eme 从 DRM 服务器获取许可证密钥时出错
问题描述
HLS Fairplay DRM 内容 videojs 返回Failed to load resource: Origin https:// is not allowed by Access-Control-Allow-Origin
。在尝试获得 HLS fairplay 的许可证时。
我正在使用 Videojs 版本 @7.5.5 和 videojs-contrib-eme 版本 @3.5.4
player.src({
// normal Video.js src and type options
src: streamUri,
type: 'application/x-mpegURL',
keySystems: {
"com.apple.fps.1_0": {
certificateUri: certificateUri,
getLicense: function (emeOptions, contentId, keyMessage, callback) {
videojs.xhr({
uri: licenceUri,
method: 'POST',
responseType: 'arraybuffer',
body: keyMessage,
headers: {
'Content-type': 'application/octet-stream',
'utoken-drm': 'fp'
}
}, function (err, response, responseBody) {
if (err) {
callback(err);
return;
}
callback(null, responseBody);
});
}
}
}
});
player.play();'''
解决方案
这是一个 CORS 错误。如果您不熟悉CORS,请参见此处。
是你的内容吗?您是否设置了许可证服务器?
推荐阅读
- design-patterns - 为什么在工厂类上使用工厂方法?
- reactjs - 如何在 2 个 React 组件之间切换状态
- python - 重试配置仅在方法中指定时有效,但在 Poolmanager 中指定时无效
- css - 由于不透明,我的动画消失了
- python - 错误:pyzmq 的轮子无效,找到多个 .dist-info 目录:libsodium-1.0.17.dist-info,pyzmq-18.1.0.dist-info
- vue.js - Google oauth 在 Facebook 应用程序 webview 中不起作用
- object - 测试指针是否为 nil 或分配会导致访问冲突
- python - 使用 Dash Cytoscape 在回调中更改节点的标签
- tensor - AttributeError:类型对象“h5py.h5.H5PYConfig”没有属性“__reduce_cython__”,版本不兼容?
- java - Kafka Streams API-过滤器运算符:“错误:类型参数的数量错误;需要 1”