web下载附件及修改名称
程序员文章站
2022-05-09 16:24:29
1 /** 2 * @param: url 附件地址 3 * @param: filename 下载后的文件名 4 */ 5 function download(url, filename) { 6 getBlob(url, function (blob) { 7 saveAs(blob, file ......
1 /** 2 * @param: url 附件地址 3 * @param: filename 下载后的文件名 4 */ 5 function download(url, filename) { 6 getblob(url, function (blob) { 7 saveas(blob, filename); 8 }); 9 10 } 11 12 function getblob(url, cb) { 13 14 var xhr = new xmlhttprequest(); 15 16 xhr.open('get', url, true); 17 18 xhr.responsetype = 'blob'; 19 20 xhr.onload = function () { 21 22 if (xhr.status === 200) { 23 24 cb(xhr.response); 25 26 } 27 28 }; 29 30 xhr.send(); 31 32 } 33 34 function saveas(blob, filename) { 35 36 if (window.navigator.mssaveoropenblob) { 37 38 navigator.mssaveblob(blob, filename); 39 40 } else { 41 42 var link = document.createelement('a'); 43 44 var body = document.queryselector('body'); 45 46 link.href = window.url.createobjecturl(blob); 47 48 link.download = filename; 49 50 // fix firefox 51 52 link.style.display = 'none'; 53 54 body.appendchild(link); 55 56 link.click(); 57 58 body.removechild(link); 59 60 window.url.revokeobjecturl(link.href); 61 62 }; 63 64 }
上一篇: 自己撸一个jQuery
下一篇: 日期函数
推荐阅读
-
linux下用renameTo方法修改java web项目中文件夹名称的实例
-
VS2010 C++环境下DLL和LIB文件目录及名称修改
-
计算机名称修改后Oracle不能正常启动问题分析及解决
-
VS2010 C++环境下DLL和LIB文件目录及名称修改
-
如何修改Nginx版本名称伪装任意web server
-
计算机名称修改后Oracle不能正常启动问题分析及解决
-
PHP附件下载中文名称乱码的解决方法
-
github下载下来的项目导入自己的本地后报错修改及配置相关解决办法
-
烧饼修改器各类版本及烧饼游戏大师下载 http://www.sbtools.org/forum.php?mod=viewthread&tid=1887&fromuid=1 (出处: 烧饼修改器-烧饼修
-
asp.net MVC 5 及 Web API修改日期格式