How to download a blob file from Chrome iOS in Javascript?(如何在Javascript中从Chrome iOS下载BLOB文件?)
问题描述
如何在Javascript中从Chrome iOS下载blob文件?
我正在从iOS下载文件(pdf、excel、txt、png)。iOS没有文件系统,这对下载来说是个问题。 如果需要,我创建一个代码来下载BLOB文件,具体取决于操作系统和导航器。它在台式机(最新版本的Chrome和IE)、移动Android(Chrome,原生导航器)和iOS iPad2(Safari)上运行良好。
现在,Chrome iOS应该像Safari Mobile一样,但算法不起作用,Chrome iOS通过在新选项卡中打开下载文件,但页面是空的。
我创建自己的Blob来创建downloadUrl。
这是下载功能的一部分。
var URL = window.URL || window.webkitURL;
var downloadUrl = URL.createObjectURL(iobBLOB);
var newWindow = null;
if (typeof a.download === 'undefined') {
var newWindow = null;
newWindow = window.open(downloadUrl, '_blank');
setTimeout(function() {
newWindow.document.title = isbFilename;
}, 10);
}
更多详细信息
在iPad 2和iPhone 4上调试
正在尝试下载excell、pdf、txt和png文件。
设备没有文件系统。
感谢您帮助我.如果您需要更多信息,请告诉我这是我的第一个问题。
推荐答案
搜索后,该解决方案似乎在ChromeiOS和Safari上运行良好。我在这个帖子上找到的,";https://stackoverflow.com/questions/24485077/how-to-open-blob-url-on-chrome-ios?answertab=oldest#tab-top";.这解决了我的问题:
//isbContentType i.e. 'text/plain'
//isbFilename i.e. 'This is a title'
var reader = new FileReader();
reader.onload = function(e) {
var bdata = btoa(reader.result);
var datauri = 'data:' + isbContentType + ';base64,' + bdata;
window.open(datauri);
newWindow = setTimeout(function() {
newWindow.document.title = isbFilename;
}, 10);
};
reader.readAsBinaryString(iobBLOB);
我相信有办法下载Blob文件,但它不是。无论如何,谢谢您
这篇关于如何在Javascript中从Chrome iOS下载BLOB文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在Javascript中从Chrome iOS下载BLOB文件?
基础教程推荐
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01