【发布时间】:2020-12-03 17:23:50
【问题描述】:
我正在尝试将视频加载到 React 项目中的 VideoJS 播放器中。视频是从一个 Web 服务返回的,该服务采用对用户进行身份验证的特定令牌。
假设视频是从以下 API 调用返回的:
localhost:8080/video/1/
要播放此视频,用户必须经过身份验证。换句话说,API 采用以下标头来返回成功的结果:
身份验证:令牌
我的 VideoJs 播放器内置在 React 组件中,如下所示:
import React from 'react'
import videojs from 'video.js'
export default class VideoComponent extends React.Component {
componentDidMount () {
this.videoJsOptions = {
sources: [{
src: 'http://localhost:8080/video/1/',
type: 'video/mp4',
}],
}
let player = videojs(this.videoNode, this.videoJsOptions, function onPlayerReady() {
console.log('onPlayerReady', this)
})
this.player = player
}
render () {
return (
<div data-vjs-player>
<video ref={node => this.videoNode = node} className="video-js"></video>
</div>
)
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
如何让我的视频组件获取调用 URL 的令牌并将请求标头传递给它?
【问题讨论】:
标签: reactjs xmlhttprequest video.js request-headers