这可能很早就被问到了,但我无法弄清楚,请帮助我,并提前致谢。
问题:
I have a link to mp4 video (ex: https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4)
我想从前端下载这个视频。
我尝试过以下方法:
const videoHref ='https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4';
const a = Object.assign(document.createElement('a'), {
href: videoHref,
style: 'display: none',
download: 'video.mp4'
});
document.body.appendChild(a);
a.click();
a.remove();
但是当我执行这段代码时,
下载将开始并立即失败并出现错误
Failed - No file
请帮我解决这个问题。
最佳答案
我使用以下代码解决了这个问题,
let xhr = new XMLHttpRequest();
xhr.open('GET', 'path/videoLink', true);
xhr.responseType = 'blob';
xhr.onload = function () {
let urlCreator = window.URL || window.webkitURL;
let videoUrl = urlCreator.createObjectURL(this.response);
let tag = document.createElement('a');
tag.href = videoUrl;
tag.target = '_blank';
tag.download = skillName.includes('.mp4') ? skillName : skillName + '.mp4';
document.body.appendChild(tag);
tag.click();
document.body.removeChild(tag);
};
xhr.onerror = (err) => {};
xhr.send();
关于javascript - 如何在 JS/React 中下载 mp4 视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71829361/