在加载视频时,为 <video>或 Image对象设置 crossOrigin属性,表明希望以匿名方式获取跨域资源(不发送用户凭证)
const video = document.createElement('video');
video.crossOrigin = 'anonymous'; // 关键设置
video.src = 'https://其他域名下的视频.mp4';
const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
video.addEventListener('loadeddata', function() {
canvas.width = video.videoWidth;
canvas.height = video.videoHeight;
ctx.drawImage(video, 0, 0,canvas.width,canvas.height);
videoItem.imgUrl = canvas.toDataURL('image/png'); // 转换为图片URL
video.remove(); // 移除video元素,释放资源(可选
canvas.remove()
});