클릭 한 번으로 특정 동영상을 다운로드하고 싶습니다. 이를 위해 버튼을 만들고 관련 비디오의 다운로드를 실행하는 기능을 첨부했습니다. 그런데 영상이 아닌 링크만 다운로드가 가능하네요. 외부 다운로더를 사용하여 비디오를 다운로드하거나 URL을 브라우저의 다운로드 섹션으로 드래그할 수 있습니다. 그러나 활동은 JavaScript를 통해 트리거될 수 없습니다. 도와주세요.
이 문제를 해결하기 위해 여러 가지 방법을 시도했습니다.
<올>const blob = new Blob([this.src_url], { type: 'video/mp4' }) const 링크 = document.createElement('a') link.href = URL.createObjectURL(블롭) link.download = this.src_url.replace( > // 'https://redis-test.com/videos/', 링크.클릭() URL.revokeObjectURL(link.href)
엔드포인트: 비디오 URL이 122바이트 파일로 다운로드됩니다
var FileSaver = require('file-saver') console.log(this.src_url) var blob = new Blob([this.src_url], { 유형: 'video/mp4' }) FileSaver.saveAs(blob, 'hello world.mp4')
저는 VueJS를 사용하지 않지만
this.src_url
동영상 URL 경로의text일 뿐이라고 생각합니다.HTML5에서는 서버에 존재하는 파일만 다운로드할 수 있습니다. 파일이 외부인 경우 해당 외부 바이트를 JS 버퍼 배열로 다시 읽으려면 HTML 파일과 동일한 서버에 있는 PHP 스크립트가 필요합니다.
으아악다음과 같아야 합니다:
으아악바이트 읽기는 FileReader API 또는 Fetch API를 사용하여 수행할 수 있습니다.
VueJS를 사용하여 파일의 바이트를 배열로 읽을 수 있으면 문제가 해결됩니다.