本文注意2点:1. URL的derevokeObjectURL方法 2 .如何给后台下载的文件重命名 ,3.blob对象的使用

本文介绍了如何在JavaScript中使用axios下载后台文件,并通过Blob对象进行重命名,同时强调了`revokeObjectURL`方法的释放资源作用。重点讨论了a.download重命名技巧和Blob对象在文件转换中的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知识点1【revokeObjectURL】: URL.revokeObjectURL() 静态方法用来释放一个之前已经存在的、通过调用 URL.createObjectURL() 创建的 URL 对象。当你结束使用某个 URL 对象之后,应该通过调用这个方法来让浏览器知道不用在内存中继续保留对这个文件的引用了。


使用场景示例:下面代码是一个文件下载的功能,做了一个请求,服务器返回文件对象。

知识点2【如何给后台下载的文件重命名】:但没有和以前的文件下载一样:以前文件下载只要给个下载地址,我们使用1. 标签加href=“下载的url”点击就可以,2.或者使用window.open(“下载的url”), 这里它做了一步转换,把请求回来的文件,生成了blob对象,并生成了可以访问blob对象的url,再创建标签加href=“下载的url”点击,其实最终它这么做的目的是为了给下载的文件file重命名

return axiosInstance[type](url,data).then((result) => {
		//console.log(result.data)//打印出来是个二进制数据缓冲区,字节大小为31923:ArrayBuffer(31923)
		//创建blob对象,第一个参数是传入数组,数组中的每项元素可以是ArrayBuffer(二进制数据缓冲区),Blob,String。或其		他类似对象的混合体,
		//第二个参数传入数组内容的MIME类型
		const blob = new Blob([result.data],{type:'application/msexcel'});
		const href = window.URL.createObjectURL(blob);
		const a = document.createElement('a'); //通过$(a)来打印查看a标签dom对象的属性。
		if('download' in a){//非ie
			a.href = href;
			a.style.display = 'none';
			fileName && (a.download = fileName);//注意点1:a.download重命名方法
			document.body.appendChild(a);
			a.click();
			document.body.removeChild(a);
			window.URL.revokeObjectURL(href);//注意点2://出于安全机制与性能考虑主动释放这个缓存
		}
		else if(window.navigator.msSaveBlob){
			window.navigator.msSaveBlob(blob,fileName);
		}
	})

总结:1.a.download重命名下载文件
2.这里使用blob对象转一遍的真正目的
3.window.open(mainUrl+url)//这种方法在任何浏览器都可以,但在ie中有所却别,需要手动选择文件夹。,并且这种方式无法改变下载的文件名称。
4. 给a标签加href与点击事件,下载文件,只在非ie的情况下适用,在ie中是不起作用的。(我在ie中已经亲自测试过)

IVMS-4200用户手册云盘是指将IVMS-4200软件用户手册存储在云盘上的一种方式。IVMS-4200是海康威视(Hikvision)公司开发的一款视频监控管理软件,用户手册是为了帮助用户更好地了解和使用该软件而编写的说明书。 云盘是指通过网络将数据存储在云服务器上,用户可以通过网络访问、传输和管理云盘中的数据。将IVMS-4200用户手册存储在云盘上有以下几个优点: 首先,便捷性。用户无需下载和安装软件,只需通过浏览器登录云盘账号,就可以随时随地查阅用户手册。无论在何地、何时,只要有网络连接,就能方便地获取手册内容。 其次,共享性。云盘是一个共享的平台,多个用户可以同时访问同一个云盘上的用户手册。这就方便了团队协作和知识共享,不同用户之间可以互相学习和交流使用经验。 再次,实时更新。云盘上存储的用户手册可以随时进行更新和替换。开发者可以在云盘上上传新版本的手册,用户只需刷新页面即可查看最新的内容,减少了传统的纸质手册印刷、分发和更新的时间和成本。 最后,安全性。云盘通常具有安全机制,如账号密码验证、数据加密等,确保用户手册的安全性和隐私性。即使用户的电脑或移动设备丢失或损坏,手册仍然安全保存在云盘上,用户不会丢失使用说明。 综上所述,将IVMS-4200用户手册存储在云盘上,可以提高使用者的便捷性、共享性、实时更新性和安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值