是否有 html 允许设置身份验证 headers 的视频播放器?
Is there a html video player that allows to set authentication headers?
我正在尝试使用来自需要基于令牌的身份验证的服务器的 HTML5 视频来播放 WebM 或 mp4 视频文件。
我找不到任何支持设置 HTTP 请求的播放器 headers fr 请求获取媒体。
仅支持 HLS 和 DASH 媒体设置 headers。
已经尝试过 video.js:(https://github.com/videojs/video.js/issues/6348)、react-player、video-react 没有成功。
我已经从头开始实现了所需的解决方案,通过 XMLHttpRequest 使用 MediaSource 获取它,并将文件作为数组缓冲区(类似于 https://html5-demos.appspot.com/static/media-source.html),但我宁愿使用一些现有的更强大的解决方案。
这是一个 hack,但您可以尝试使用 ServiceWorker。
您的 ServiceWorker 可以附加适当的身份验证 headers,然后您根本不必在视频播放器中执行任何特殊或奇怪的操作。您可以继续使用标准 <video>
标签。此外,浏览器可以针对请求的范围保持自己的行为,您将不必经历令人头疼的媒体源扩展和不兼容问题。
另请参阅:https://serviceworke.rs/strategy-cache-and-update.html
请注意,尽管这并不总是有效...有时服务工作者未加载(例如当用户执行 shift+refresh 时)。
我正在尝试使用来自需要基于令牌的身份验证的服务器的 HTML5 视频来播放 WebM 或 mp4 视频文件。 我找不到任何支持设置 HTTP 请求的播放器 headers fr 请求获取媒体。
仅支持 HLS 和 DASH 媒体设置 headers。
已经尝试过 video.js:(https://github.com/videojs/video.js/issues/6348)、react-player、video-react 没有成功。
我已经从头开始实现了所需的解决方案,通过 XMLHttpRequest 使用 MediaSource 获取它,并将文件作为数组缓冲区(类似于 https://html5-demos.appspot.com/static/media-source.html),但我宁愿使用一些现有的更强大的解决方案。
这是一个 hack,但您可以尝试使用 ServiceWorker。
您的 ServiceWorker 可以附加适当的身份验证 headers,然后您根本不必在视频播放器中执行任何特殊或奇怪的操作。您可以继续使用标准 <video>
标签。此外,浏览器可以针对请求的范围保持自己的行为,您将不必经历令人头疼的媒体源扩展和不兼容问题。
另请参阅:https://serviceworke.rs/strategy-cache-and-update.html
请注意,尽管这并不总是有效...有时服务工作者未加载(例如当用户执行 shift+refresh 时)。