相关疑难解决方法(0)

我们如何下载blob网址视频

我想下载一个视频,其网址不是简单的mp4文件,但其网址是blob类型,例如.

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

是否有任何Chrome扩展程序或软件可用于下载播放视频.

browser video blob

132
推荐指数
8
解决办法
31万
查看次数

将blob URL转换为普通URL

我的页面生成如下URL:"blob:http%3A//localhost%3A8383/568233a1-8b13-48b3-84d5-cca045ae384f"如何将其转换为普通地址?

我使用它作为一个<img>src属性.

javascript url blob

82
推荐指数
3
解决办法
17万
查看次数

Html5的文件API - BLOB使用?

我有一个文件输入: (jsbin)

 <input type="file"   accept="image/*" id="input" multiple   onchange='handleFiles(this)' />
Run Code Online (Sandbox Code Playgroud)

选择文件时,显示所选图像的小图像:

我可以用两种方式做到:

使用FileReader:

function handleFiles(t) //t=this
{
    var fileList = t.files;
    for (var i = 0; i < fileList.length; i++)
    {
        var file = fileList[i];
        var img = document.createElement("img");
        img.style... = ...
        document.getElementById('body').appendChild(img);
        var reader = new FileReader();
        reader.onload = (function (aImg)
        {
            return function (e)
            {
                aImg.src = e.target.result;
            };
        })(img);
        reader.readAsDataURL(file);
    }
    // ...
}
Run Code Online (Sandbox Code Playgroud)

使用ObjectURL/BLOB:

 function handleFiles(t)
 {
     var fileList = t.files;
     for (var …
Run Code Online (Sandbox Code Playgroud)

javascript html5 blob fileapi

20
推荐指数
2
解决办法
3万
查看次数

JS 将 blob url 转换为 Base64 文件

有以下代码:

console.log(blob);
var reader = new window.FileReader();
reader.onloadend = function() {            
  console.log(reader.result);
};
reader.readAsDataURL(blob);
Run Code Online (Sandbox Code Playgroud)

blob 是“ blob:http://localhost:3000/e3c23a22-75b1-4b83-b39a-75104d1909b9”,并且出现以下错误:

TypeError: Failed to execute 'readAsDataURL' on 'FileReader': parameter 1 is not of type 'Blob'.
Run Code Online (Sandbox Code Playgroud)

如何修复此错误并将 Blob 转换为 Base64 编码图像?提前致谢!

javascript

7
推荐指数
2
解决办法
1万
查看次数

如何在Android上的WebView中读取Blob中的数据?

我有一个服务器在浏览器上创建一个对象blob,我想在Android应用程序的WebView中下载它.我尝试将请求重定向到浏览器实例以及使用下载管理器执行此操作,但它们似乎都不起作用(即使我在Chrome中打开相同的页面,下载操作也在那里工作).

我尝试了以下代码,它抛出错误:

Android.content.ActivityNotFoundException:找不到处理Intent的活动{act = android.intent.action.VIEW dat = blob:https%3A // 111.111.111.111%3A8080/40b63131-63b1-4fa4-9451-c6297bbd111a"

编辑

Android.content.ActivityNotFoundException:找不到处理Intent的Activity {act = android.intent.action.VIEW dat = blob:http://digitalinsensu.com/0f0d6127-a0f1-44c3-af85-72f648258d6d


码:

mWebView.setDownloadListener(new DownloadListener() {
public void onDownloadStart(String url, String userAgent,String contentDisposition, String mimetype,long contentLength) {
    Intent i = new Intent(Intent.ACTION_VIEW);
    i.setData(Uri.parse(url));
    startActivity(i);
}
});
Run Code Online (Sandbox Code Playgroud)

这会抛出java.lang.IllegalArgumentException:只能下载HTTP/HTTPS URIs错误:

mWebView.setDownloadListener(new DownloadListener() {
    public void onDownloadStart(String url, String userAgent,String contentDisposition, String mimetype,long contentLength) {
        DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
        request.allowScanningByMediaScanner();
        request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
        request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "download");
        DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
        dm.enqueue(request);

    }
});
Run Code Online (Sandbox Code Playgroud)

我该如何下载blob?任何帮助,将不胜感激.

android blob android-webview

6
推荐指数
2
解决办法
8083
查看次数

如何在iOS 12上隐藏HTML5视频控件

即使将HTML5视频播放器设置为in 标签,但HTML5视频播放器仅在iOS中 显示控件,但所有其他浏览器都可以正常运行,并且不显示控件。12.x.xfalsevideo

场景是,每当页面加载时,我们都会在横幅上自动播放视频,但是如果打开了节电功能,则它将不会自动播放视频,并显示带有初始缩略图的播放按钮(仅在iOS 12.xx中),而在其他浏览器中,则显示视频的初始缩略图,没有任何播放按钮。

我的代码如下所示:

<video id="header-video" autoplay="true" controls="false" playsinline="true" muted="true" loop="true">
  // sources here
</video>
Run Code Online (Sandbox Code Playgroud)

我正在寻找隐藏此播放图标的解决方案(如上图所示),但是如果不可能,那么有什么解决方案可以使我知道省电模式已打开并隐藏视频(因为我有一个背景向后兼容)。

**在此处输入图片说明**

html5 html5-video

6
推荐指数
1
解决办法
2135
查看次数

通过axios发送Blob文件

我有这样的对象:

{
    "name": "filename",
    "size": 3523507,
    "type": "image/png",
    "extension": "png",
    "url": "blob:http://localhost:8081/082e9c22-9869-4289-a9c8-e36b0640e61c"
}
Run Code Online (Sandbox Code Playgroud)

我需要将其上传到后端。我尝试一下:

const session = axios.create({
  baseURL: debug ? 'http://localhost:8000': '',
  xsrfCookieName: CSRF_COOKIE_NAME,
  xsrfHeaderName: CSRF_HEADER_NAME,
});
let formData = new FormData();
formData.append('file', file, 'file.name');

return session.post(`/chats/files/`,{...formData},), {
  headers: {
    "Content-Type": `multipart/form-data`,
  }
}
Run Code Online (Sandbox Code Playgroud)

但是将Blob添加到formData中不起作用

UPD 我从 vue-advanced-chat 组件中的 send-message 方法获取一个包含文件的对象,格式如下:

{
    "name": "filename",
    "size": 3523507,
    "type": "image/png",
    "extension": "png",
    "localUrl": "blob:http://localhost:8081/aae047a9-5f9e-481f-b0cc-17febe954c31",
    "blob": {}
}
Run Code Online (Sandbox Code Playgroud)

然后我将其格式化为在上传到服务器之前显示在界面中

UPD2

我将 blob 转换为文件

send_file(roomId, messageId, blob_file, isAudio, duration) {
        let formData = …
Run Code Online (Sandbox Code Playgroud)

javascript axios

6
推荐指数
1
解决办法
1万
查看次数

如何从 youtube 的 HTML5 版本获取 HTML5 视频 URL?

我无法在 html5 版 youtube 的源代码中找到标签。

问题 1)。关于如何在没有视频元素的情况下播放 HTML5 视频的任何想法?

一种选择是它正在从 JS 添加视频元素,但即使在 web-inspector 的 DOM 中我也无法找到视频元素。

问题 2)。如何在网络检查器或萤火虫中找到视频元素?

PS:我是网络开发的新手。

youtube html5-video

5
推荐指数
1
解决办法
4万
查看次数

克隆音频源而无需再次下载

我正在使用javascript在浏览器中创建钢琴.为了让我同时多次播放相同的键,而不是只播放Audio对象,我克隆它并播放克隆,否则我必须等待音频完成或重新启动它,我不知道我想要.

我做过这样的事情:

var audioSrc = new Audio('path/');
window.onkeypress = function(event) {
    var currentAudioSrc = audioSrc.cloneNode();
    currentAudioSrc.play();
}
Run Code Online (Sandbox Code Playgroud)

问题是,我正在检查chrome的检查器,我注意到每次克隆对象时,浏览器都会再次下载它

在此输入图像描述

我检查了一些想要实现类似功能的人,并注意到他们中的大多数都遇到了同样的问题,他们重新下载了文件.我发现可以同时多次播放相同音频源的唯一示例是SoundJs http://www.createjs.com/SoundJS

我尝试检查源可能但无法弄清楚它是如何完成的.任何的想法?


javascript audio html5

5
推荐指数
1
解决办法
721
查看次数

防止通过检查元素下载html5视频

我们的项目中有一个模块,其中可以选择上传 mp4 视频,我们使用 html5 视频标签播放器来播放视频。

我们面临的问题是视频的隐私。当时,用户可以很容易地通过右键单击“另存为视频”或通过检查元素从视频标签的 src 中获取 url 来下载我们的文件。为此,我进行了很多研究,并通过 YouTube 视频了解了 blob url,但无论如何都无法访问。我尝试研究 blob-url,为我的视频 url 创建了一个,但它们仍然可以访问并且可以轻松下载。就像 youtube blob-url 一样,它不起作用。我还研究了这个问题的一个答案,通过它我了解了 YouTube 缓冲视频的机制以及 YouTube 的检查元素中显示的 blob url 如何是一个欺骗。

最重要的是,我想知道如何欺骗我们的网站网址,以便没有人可以通过检查元素下载它。我们是否可以这样做以及如何这样做?任何与此相关的链接请与我分享。我已经尝试学习很多,但仍然缺少一些东西。

YouTube 实际上遵循什么机制来创建 blob url 并保存其视频?

html javascript youtube video

3
推荐指数
1
解决办法
5813
查看次数

如何加载未标记为不安全的 blob URL?

如果您转到https://developer.mozilla.org/en-US/docs/Web/API/Blob#creating_a_blob中的“创建 blob”示例,您最终会得到一个以“blob:https:”开头的 URL //”,但浏览器将站点标记为不安全: 在此输入图像描述

需要什么条件才能将其标记为安全?

为了给出我正在做的事情的背景:我有一个角度应用程序,可以在新选项卡中从 Base64 数据打开 PDF,并且可以同时打开任意数量的 PDF。

javascript browser blob security-warning createobjecturl

2
推荐指数
1
解决办法
3306
查看次数