位置: IT常识 - 正文

前端几种下载文件的方式(url方式和文件流方式)(前端几种下载文件)

编辑:rootadmin
前端几种下载文件的方式(url方式和文件流方式)

推荐整理分享前端几种下载文件的方式(url方式和文件流方式)(前端几种下载文件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:前端下载软件,前端 下载,前端如何实现下载功能,前端实现下载文件,前端文件下载,前端文件下载,前端几种下载文件类型,前端几种下载文件类型,内容如对您有帮助,希望把文章链接给更多的朋友!

前端实现下载功能是依赖于浏览器特性,而非JS特性 前端如何实现文件下载,防止浏览器自动打开可预览文件 https://blog.csdn.net/weixin_46074961/article/details/105677732

1.location.href 下载文件–window-location-href

对于浏览器不能打开的文件(例如:.rar .doc等)是可以实现文件下载的,但是对于浏览器可以打开的(例如:.txt .xml等)只可以实现预览功能

window.location.href="https://106.14.15.103:8000/downloadFile/test"前端几种下载文件的方式(url方式和文件流方式)(前端几种下载文件)

2.window.open()

Window 接口的 open() 方法,是用指定的名称将指定的资源加载到浏览器上下文(窗口 window ,内嵌框架 iframe 或者标签 tab )。如果没有指定名称,则一个新的窗口会被打开并且指定的资源会被加载进这个窗口的浏览器上下文中。

//后台传来的下载路径url:https://106.14.15.103:8000/downloadFile/test//前端核心代码window.open(url);

很明显这个方法只能将指定路径的资源加载到浏览器里,如果该文件不能被浏览器预览,浏览器就会下载该文件,但是,如果浏览器可以预览该文件呢?是不是这个方法不可以实现?要求下载一个txt文本,用该方法浏览器会直接预览该txt文件。

3.a标签(可以直接下载)

a标签的href属性指定下载文件的路径,需要给a标签添加一个download属性,download指定下载文件保存时的名称。

<a href="https://106.14.15.103:8000/downloadFile/test" download="test.txt">下载</a>

上述三种都是通过加载文件url直接下载,如果后端返回文件流,则需要先转化为url再下载; 另外上述三种方式默认是get方式,如果需要使用post方式且需传参,最好使用第四种方式;

4.文件流下载

1.ajax请求将文件流下载下来2.将下载的文件流转化为blob数据3.通过 window.URL.createObjectURL(blob)将blob转化为url4.通过动态生成a标签 模拟点击事件下载this.$http({ url: this.$http.adornUrl(`/strUrl/${id}`), method: 'get', responseType: 'blob', timeout: 1000 * 600 }).then(res => { console.log('res', res) if (res.status === 200) { const blob = new Blob([res.data], { type: `application/octet-stream` }) const downloadElement = document.createElement('a') const href = window.URL.createObjectURL(blob) downloadElement.href = href downloadElement.download = `${filename}` downloadElement.click() } else { this.$message.error('下载出错!') } })

5.iframe

<el-button size="mini" @click="handleExport(scope.row)">导出</el-button>//method方法:handleExport(row) { var elemIF = document.createElement('iframe') elemIF.src = 'user/downloadExcel?snapshotTime=' + formatDate(new Date(row.snapshotTime), 'yyyy-MM-dd hh:mm') + '&category=' + row.category elemIF.style.display = 'none' document.body.appendChild(elemIF)}
本文链接地址:https://www.jiuchutong.com/zhishi/289022.html 转载请保留说明!

上一篇:东京的秋叶和金鱼,日本 (© qrsk/Moment/Getty Images)(日本东京秋叶原攻略)

下一篇:YOLOv8改进损失函数WDLoss:独家更新|即插即用|YOLOv8小目标检测高效涨点2%,改进用于小目标检测的归一化高斯 Wasserstein Distance Loss,提升小目标检测(yolov5损失)

  • 华为识图购物怎么关闭(华为识图购物怎么用)

    华为识图购物怎么关闭(华为识图购物怎么用)

  • mate40pro屏幕尺寸(mate40pro屏幕尺寸长宽)

    mate40pro屏幕尺寸(mate40pro屏幕尺寸长宽)

  • wps怎么筛选相同数据

    wps怎么筛选相同数据

  • 荣耀30pro有微距拍摄功能吗(荣耀30pro有微距吗)

    荣耀30pro有微距拍摄功能吗(荣耀30pro有微距吗)

  • 电脑flash插件出现异常怎么办(电脑flash插件是什么意思)

    电脑flash插件出现异常怎么办(电脑flash插件是什么意思)

  • 手机qq怎么隐藏腾讯会员(手机qq怎么隐藏黄钻图标)

    手机qq怎么隐藏腾讯会员(手机qq怎么隐藏黄钻图标)

  • 笔记本键盘进水会坏吗(笔记本键盘进水了按键失灵了怎么办)

    笔记本键盘进水会坏吗(笔记本键盘进水了按键失灵了怎么办)

  • surface pro6与7的区别(surface pro6与7的屏幕)

    surface pro6与7的区别(surface pro6与7的屏幕)

  • 手机屏侧面开缝怎么办(手机屏侧面开缝维修多少钱)

    手机屏侧面开缝怎么办(手机屏侧面开缝维修多少钱)

  • word怎么单独设置英文字体(word怎么单独设置一页的页眉)

    word怎么单独设置英文字体(word怎么单独设置一页的页眉)

  • 在icloud上删除照片手机里面还有吗(在icloud上删除照片还能恢复吗)

    在icloud上删除照片手机里面还有吗(在icloud上删除照片还能恢复吗)

  • 锐龙5 2500u相当于i几(锐龙5 2500u相当于台式机cpu)

    锐龙5 2500u相当于i几(锐龙5 2500u相当于台式机cpu)

  • 华为watch gt2喇叭防水吗(华为gt2喇叭脏了怎么处理)

    华为watch gt2喇叭防水吗(华为gt2喇叭脏了怎么处理)

  • 淘宝申请开票是什么意思(淘宝申请开票是电子发票吗)

    淘宝申请开票是什么意思(淘宝申请开票是电子发票吗)

  • 苹果下载为什么要按两下(苹果下载为什么需要验证)

    苹果下载为什么要按两下(苹果下载为什么需要验证)

  • 怎么知道qq共同好友具体是谁(怎么知道qq共同联系人)

    怎么知道qq共同好友具体是谁(怎么知道qq共同联系人)

  • 华为mate30怎么截图(华为mate30怎么截屏的4种方法)

    华为mate30怎么截图(华为mate30怎么截屏的4种方法)

  • 手机怎样恢复出厂设置(手机怎样恢复出厂系统)

    手机怎样恢复出厂设置(手机怎样恢复出厂系统)

  • iphone11屏幕尺寸(iphone12屏幕尺寸)

    iphone11屏幕尺寸(iphone12屏幕尺寸)

  • iqoopro有无线充电吗(iqoo7pro无线充电)

    iqoopro有无线充电吗(iqoo7pro无线充电)

  • 银行卡绑定的手机号注销了怎么办(银行卡绑定的手机号码怎么更改)

    银行卡绑定的手机号注销了怎么办(银行卡绑定的手机号码怎么更改)

  • qq养火花有什么用

    qq养火花有什么用

  • 台式电脑辐射大还是笔记本辐射大(台式电脑辐射大还是智能手机辐射大)

    台式电脑辐射大还是笔记本辐射大(台式电脑辐射大还是智能手机辐射大)

  • NLP:自然语言处理技术领域的代表性算法概述(技术迭代路线图/发展时间路线)、四大技术范式变迁概述(统计时代→大模型时代)、四个时代的技术方法论探究(少数公司可承担的训练成本原因)之详细攻略(nlp自然语言处理框架)

    NLP:自然语言处理技术领域的代表性算法概述(技术迭代路线图/发展时间路线)、四大技术范式变迁概述(统计时代→大模型时代)、四个时代的技术方法论探究(少数公司可承担的训练成本原因)之详细攻略(nlp自然语言处理框架)

  • 【实战】用 Custom Hook + TS泛型实现 useArray(custom用法)

    【实战】用 Custom Hook + TS泛型实现 useArray(custom用法)

  • 个人所得税谁交
  • 业务招待费报销要求
  • 其他应收款的对方科目有哪些
  • 税控服务费减免税款分录
  • 法人其他应付款在借方表示
  • 财务报表季报申报报表要分开申报吗
  • 不动产融资租赁税率是多少
  • 外地建筑工程开票流程
  • 纳税人转登记期限
  • 职工退休金计入个人账户
  • 债权如何变现
  • 私对公转错了多久退回来
  • 员工集体旅游费会计分录
  • 行政事业单位核算短期投资时有关预算会计核算正确的是
  • 材料暂估入库后怎么做账
  • 企业基本保险
  • 账本印花税怎么做账
  • 补交以前年度房产税如何记账
  • 免税申请怎么办理
  • 商铺租金收入交什么税一共多少个点
  • 业务招待费进项税额需要转出吗
  • 增值税只有销项没有进项怎么做账
  • 递延所得税费用为负数是什么意思
  • 电力设备维护费增值税税率
  • 小规模纳税人计提增值税账务处理
  • 实际缴纳的增值税比计提的多
  • 高速公路过路费查询网站
  • 劳务报酬所得缴多少税
  • 利息保障倍数如何计算
  • 先计提社保还是先计提工资
  • window1020h2更新问题
  • 企业社保缴费工资
  • 专用发票红字发票怎么开
  • 在win7中,当前窗口的数量是多少个
  • 财政专项补助资金企业所得税申报
  • 现金分红说明什么
  • 苹果手机升级微信版本
  • php date_diff
  • 净损益是
  • 增资导致的股权稀释涉税吗
  • 收到税务局退增值税及附加税怎么做账
  • 企业发生的与日常经营活动无直接关系的各项利得
  • 预付装修款账务处理
  • 简述税款征收的基本原则
  • 投资公司收到境外债务
  • 出租经营的开发产品应视为企业的
  • ssm算前后端分离吗
  • php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
  • y库数据库
  • 平常心下一句该怎么说
  • 中标费用入什么科目
  • 冲减管理费用为什么放在借方
  • 支付给外单位人员的报酬怎么入账
  • 公司购买的房屋怎么入账
  • 老板天天吸烟
  • 普票红冲要不要去收回发票联?
  • 差旅费包括内容
  • 金税四期的基本理念
  • 劳务报酬所得如何申报
  • 预付账款转入其他应付款会计分录
  • 公司员工餐费如何做账
  • 月末未完工半成品的分录
  • 股权部分转让如何计算
  • 最新商业会计科目做账
  • sqlserver字符函数
  • Mysql5.7在Centos6中的安装方法
  • win8共享文件
  • sonytray.exe - sonytray是什么进程
  • win7诊断策略服务未运行是电脑问题还是网络
  • win10系统谷歌浏览器为什么打不开
  • WIN10企业版安装NET3.5
  • vue scoped属性作用?实现原理
  • 基于JAVASCRIPT实现的可视化工具是
  • web jquery
  • 远程批量管理windows
  • unity3d跨平台
  • js常用方法总结
  • 用AutoCompleteTextView实现自动提示
  • time模块 python
  • 沈阳和平税务大厅电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设