Я новичок в веб-разработке. Я написал следующий код, используя реагировать JS для потокового видео. Для аутентификации мне нужно установитьReReeeHeader при запросе к серверу.
constructor(props) {
super(props);
this.Click = this.Click.bind(this);
this.onPlay = this.onPlay.bind(this);
}
Click(evt) {
const path = "https://10.1.3.215:8443/files" +
this.props.location.pathname.slice(6,
this.props.location.pathname.length) + "/" + this.props.selectedName
const xhr = new XMLHttpRequest();
xhr.open("GET", path, true);
xhr.setRequestHeader('idtoken', this.props.user.idtoken);
xhr.setRequestHeader('id', this.props.user.id);
xhr.send({url:path});
}
onPlay(evt) {
console.log("Hello, I'm streaming...")
}
<video
ref={(video) => {this.video = video}}
src={this.state.url}
width="1080"
onClick={this.click}
onPlay={this.onPlay}
height="640"
controls
/>
Заголовок успешно отправлен на сервер, а клиентская сторона загружает видео с сервера. Тем не менее, он не может быть воспроизведен HTML5 видео.
Если я уберу требование аутентификации со стороны сервера, клиентская сторона может воспроизводить потоковое видео. Я не могу добиться аутентификации и потокового видео одновременно. У кого-нибудь есть идеи как решить эту проблему?