html - 从 "blob"url 检索下载文件

标签 html video

<分区>

一个网站有一个视频标签元素,结构如下:

<video id="playerVideo" width="450px" autoplay="autoplay" height="338px" style="height:100%;width:100%;" class="mejs-rai-e" src="blob:http%3A//www.example.com/d70a74e1-0324-4b9f-bad4-84e3036ad354"></video>

如您所见,src 元素有一个预先配置为 blob 的 url。 有没有类似脚本或者视频下载器插件的方法来定位文件并下载?

最佳答案

如果您有 blob url,您可以从 <a> 中设置 href 属性(link) 标签下载文件。

在下面的示例中,我使用 xhr 响应创建了 blob url。问题的答案基本上可以在名为 download() 的函数中找到。

function setVideo(blob)
{
  var url = URL.createObjectURL(blob);
	var video = document.getElementById('playerVideo');
	video.type = "video/mp4";
	video.src = url;
	video.load();
	download(url);
}
	
function download(blob_url)
{
	var fileName = "video.mp4";
	var a = document.createElement('a');
	a.href        = blob_url;
	a.download    = fileName;
	a.textContent = "DOWNLOAD " + fileName;
	document.getElementById('blobURL').innerHTML = "BLOB URL: <b>"+blob_url+"</b>";
	document.getElementById('download').appendChild(a);
}
	
$(document).ready(function(){
 var xhr = new XMLHttpRequest();
 xhr.responseType = 'blob';

 xhr.onload = function() {
  setVideo(xhr.response);
 };

 xhr.open('GET', 'https://cors-anywhere.herokuapp.com/http://techslides.com/demos/sample-videos/small.mp4');
 xhr.send();

});
<!DOCTYPE html>
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>

<h1>My Page</h1>
<p>Some paragraph.</p>
<video id="playerVideo" width="320" height="240" autoplay="autoplay" muted>
  Your browser does not support the video tag.
</video><br>
<span id="blobURL"></span><br>
<span id="download"></span>

</body>
</html>

关于html - 从 "blob"url 检索下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37962620/

相关文章:

php - Post 函数无法按预期与数据库一起运行

javascript - Jquery动态内容图像旋转不起作用?

javascript - Youtube api - 停止视频

html - 如何在屏幕的两侧放置两个 div,HTML,CSS

html - Font Awesome 在浏览器中不起作用,但在 codepen 中有效

javascript - 如何去除 Formik Field ReactJS 的抖动

audio - 无法为 'ffmpeg' 找到合适的输出格式以将 mp4 音频与 mp4 音频连接起来

c++ - Opencv 保存视频

Android: 'Can' t 播放此视频'; MediaPlayer 和 VideoView 错误 1 ​​-38

objective-c - 无法从 iPhone 应用程序中的 URL 播放视频?