javascript - 下载在 React konva JS 视频中不起作用
问题描述
class MyVideo extends React.Component {
constructor(...args) {
super(...args);
const video = document.createElement('video');
video.src = 'http://clips.vorwaerts-gmbh.de/VfE_html5.mp4';
this.state = {
video: video
};
video.addEventListener('canplay', () => {
videocrossorigin="anonymous"
video.play();
this.image.getLayer().batchDraw();
this.requestUpdate();
});
}
requestUpdate = () => {
this.image.getLayer().batchDraw();
requestAnimationFrame(this.requestUpdate);
}
render() {
return (
<Image
ref={node => { this.image = node; }}
x={10} y={10} width={200} height={200}
image={this.state.video}
/>
);
}
}
正如lavrton所建议的,我正在使用上面的代码在 konva js 中渲染视频。有用。但是,即使我允许来自视频甚至来自服务器的跨域,当我尝试使用 stage.toDataUrl() 下载时,它也会显示以下错误。不知道发生了什么!
CORS 策略已阻止从源“url”访问“url/sample2.mp4”处的视频:请求的资源上不存在“Access-Control-Allow-Origin”标头。
帮助将不胜感激。
解决方案
您可能需要在设置属性crossOrigin
之前尝试设置:src
video.crossOrigin = "Anonymous";
video.src = 'http://clips.vorwaerts-gmbh.de/VfE_html5.mp4';
推荐阅读
- python - 如何使用 Python 发出 URL 请求并返回重定向到的 URL?
- prolog - 如何在 ECLIPSE-CLP 或 Prolog 中实现这些 Sigma 符号
- electron - 如何将电子生成器与目标便携式设备一起使用?
- python - 打印语句的问题
- vb.net - 如何在 vb.net 的查询字符串中不通过 $expand 来扩展(odata-webapi)所有属性
- python - 如何在 Python 中以附加模式打开 /etc/hosts 文件?
- regex - 使正则表达式以懒惰的方式匹配,同时跳过一些单词
- java - 完成所有字段验证后如何重定向 zk 另一个页面?
- c# - 两个连接实体之间的 EF Core 查询
- javascript - 不带钩子更新文档标题