下载.txt文件 方法有哪些?

1.1. a标签行内 默认 :get请求

html 复制代码
<a href="your-file.pdf" download="desired-filename.pdf">下载文件</a>

1.2. a标签另一种方式

html代码 👇

html 复制代码
<button onclick="downloadCSV()">下载CSV文件</button> 

js代码👇

javascript 复制代码
function downloadCSV() {  
    // 示例CSV数据  
    var csv = "姓名,年龄,职业\n张三,30,软件工程师\n李四,25,数据分析师";  
  
    // 创建一个Blob对象  
    var blob = new Blob([csv], { type: "text/csv;charset=utf-8;" });  
  
    // 创建一个指向Blob的URL  
    var url = URL.createObjectURL(blob);  
  
    // 创建一个a标签并设置属性  
    var a = document.createElement("a");  
    a.href = url;  
    a.download = "example.csv"; // 设置下载文件名  
    document.body.appendChild(a); // 将a标签添加到body中(虽然这一步并非必需,但可以避免某些浏览器的安全限制)  
    a.click(); // 模拟点击以触发下载  
  
    // 清理:从body中移除a标签,并释放URL对象  
    document.body.removeChild(a);  
    window.URL.revokeObjectURL(url);  
} 

2、下载文件 post 请求

html代码👇

html 复制代码
<div @click="downloadData">
    下载表格数据
</div>

js代码👇

javascript 复制代码
    downloadData() {
      downloadData().then(res => {
        // 假设 data 是返回来的二进制数据 const data = res.data
        const url = window.URL.create0bjectURL(
          new Blob([data],{ type: "a application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"})
        )
        const link = document.createElement('a')
        link.style.display = 'none'
        link.href = url
        link.setAttribute('download', 'excel.xlsx')
        document.body.appendChild(link)
        link.click()
        document.body.removeChild(link)
      })
    },

index.js接口文件👇

javascript 复制代码
   export function getDownloadData (data) {	
	 return request({	
	   url: '/soft/downloadApi',	
	   method: 'post',	
	   data: data,	
	   responseType:'blob'	//这个很重要
	})
相关推荐
usdoc文档预览30 分钟前
USDOC系列之PPT文件在线编辑-VUE前端实现在线浏览器在线编辑PPT文档
前端·vue.js·编辑器·office365·ppt在线编辑·office文件在线编辑·文件在线编辑
用户27050777252436 分钟前
Agent 调工具卡住?3 种超时与取消策略实测对比
前端
yeccheng1 小时前
MySQL 索引超详解:从底层 B+ 树到面试高频考点
java·开发语言·jvm·mysql·面试
这个昵称不容易1 小时前
SpringBoot 读书笔记共享平台部署实战:97 个 Java 文件 / 113 个接口 / 10 张表
java·springboot·毕设
LuHang2 小时前
我一行代码没写,把领导派的活做成了公司内部系统😭
前端
明月_清风2 小时前
Meta 开源了一个 AI Native 组件库:Astryx,150+ React 组件,专为 AI Agent 而设计
前端·人工智能·ai编程
用户850869276152 小时前
秒杀系统中 Shell 脚本并发控制 Bug:究竟哪里出了
前端
金銀銅鐵3 小时前
一个 Java 文件实现《孫子兵法·始計篇》中英对照阅读器
java·后端·ai编程
DevOpenClub4 小时前
高考教育信息问答 API:会话参数、资料引用与流式响应
java·数据库·高考
bro_Java6664 小时前
《排序的底层逻辑:比较、交换与分治》
java·算法·排序算法