当前位置: 首页 > news >正文

卖彩票的网站怎么做的苏州网站建设与网络营销

卖彩票的网站怎么做的,苏州网站建设与网络营销,做购物网站之前做些什么,齐河做网站前端实现获取后端返回的文件流并下载 方法一#xff1a;使用Axios实现文件流下载优点缺点 方法二#xff1a;使用封装的Request工具实现文件流下载优点缺点 方法三#xff1a;直接通过URL跳转下载优点缺点 结论 在前端开发中#xff0c;有时需要从后端获取文件流#xff0… 前端实现获取后端返回的文件流并下载 方法一使用Axios实现文件流下载优点缺点 方法二使用封装的Request工具实现文件流下载优点缺点 方法三直接通过URL跳转下载优点缺点 结论 在前端开发中有时需要从后端获取文件流并将其下载到本地。本文介绍如何在前端实现此功能的不同的实现方法并分析其优缺点 方法一使用Axios实现文件流下载 使用Axios实现文件流下载的方法本人亲测可以实现 import axios from axios; import { getToken } from /utils/authhandleExport() {// 接口调用获取文件axios({method: get,responseType: blob, // 指定响应类型为bloburl: this.GLOBAL.baseURL /api/v1/business/user/export,data: this.queryParams, // 导入文件一般都用FormData格式数据headers: { Authorization: Bearer getToken() } // 传递token进行身份验证}).then(res {if (res.code 200) {// 导入成功this.downloadBinaryFile(res.data, 导入失败后下载的报错文件)} else {// 输出失败信息}}).catch(error {console.error(下载失败, error);}); },/*** 将二进制文件下载到本地保存为excel文件* param {*} binFile 二进制文件流* param {*} fileName 下载后的文件名* param {*} blobType 文件格式默认为 application/vnd.ms-excel*/ downloadBinaryFile(binFile, fileName, blobType application/vnd.ms-excel) {// 创建 Blob 对象包含二进制文件流和文件类型const blobObj new Blob([binFile], { type: blobType });// 创建下载链接元素const downloadLink document.createElement(a);// 处理不同浏览器的 URL 兼容性let url window.URL || window.webkitURL; url url.createObjectURL(blobObj); // 创建文件 URL// 设置下载链接属性downloadLink.href url;downloadLink.download fileName;// 将下载链接添加到文档中并触发点击事件document.body.appendChild(downloadLink);downloadLink.click();// 移除下载链接并释放 URL 对象document.body.removeChild(downloadLink);window.URL.revokeObjectURL(url); }实现的效果 优点 支持传递Token进行身份验证安全性较高支持POST请求可以将参数放在请求体中避免URL长度限制及参数暴露 缺点 实现相对复杂需要手动创建和管理Blob对象及下载链接 方法二使用封装的Request工具实现文件流下载 接下来介绍使用封装的Request工具实现文件流下载的方法 import request from /utils/request// 日志管理收藏、浏览、下载导出接口 export function exportUserOperateAdmin(data, headers) {return request({url: /business/user/export,method: get,data: data,headers: headers}) }// 调用导出接口 exportUserOperateAdmin(this.queryParams, { responseType: blob }).then(response {console.log(response)const url window.URL.createObjectURL(new Blob([response.data])) // 创建下载链接const link document.createElement(a)link.href urllink.download 全文导入模板.xlsx // 设置文件名document.body.appendChild(link)link.click() // 触发下载document.body.removeChild(link) // 下载后移除元素} ).catch(error {console.error(下载失败, error)this.loading false // 停止加载隐藏加载状态 })优点 封装后的Request工具调用简单代码更简洁支持传递Token进行身份验证安全性较高 缺点 实现相对简单但仍需手动处理Blob对象及下载链接 方法三直接通过URL跳转下载 最后介绍直接通过URL跳转实现文件下载的方法 const baseurl this.GLOBAL.baseURL // 拼接上导出的地址如果接口还需要其他参数都可以直接拼接上 let url baseurl /api/v1/business/user/export; console.log(url) alert(url) // 第二个参数_self表示在当前页下载不打开新的页面 window.open(url, _self)优点 实现简单不需要处理Blob对象及下载链接适合下载无需身份验证或参数简单的文件 缺点 无法传递Token进行身份验证安全性较低参数放在URL中不安全且可能会导致URL过长处理中文参数可能会出现乱码问题 结论 以上三种方法各有优缺点实际开发中可以根据具体需求选择合适的方法。 如果需要传递Token进行身份验证并确保下载安全性推荐使用方法一或方法二 如果只是简单下载无需验证的文件可以考虑使用方法三
http://www.tj-hxxt.cn/news/229793.html

相关文章:

  • 素材网站官网河南工程招标网站
  • 专业网站建设比较好怎么联系百度人工服务
  • 网站图片不轮播网站现在用h5做的吗
  • 定制网站建设公司有哪些wordpress 主题颜色
  • 明企科技网站建设系统seo实战培训费用
  • 户外运动网站建设策划互联网公司排名100强
  • 如何用手机建立网站wordpress 公网贷款
  • 什么网站做展板的多网站正能量就是一打开全是的
  • 如何建设淘宝客网站网站前台的实现
  • 建站公司 长沙和西安深圳app开发定制公司
  • 一个企业做网站需要什么资料建设工程勘察设计管理条例
  • 图文店做网站有用处吗安徽建设工程有限公司
  • 郑州网站建设公司如何为自己网站建设
  • 昆山网站建设 技术支持 力得网络设计网有哪些
  • 网站建设需要提供功能目录吗网站做显卡评测软件
  • 做网站如何使用网页插件网站的小图标怎么做的
  • 可以做很多个网站然后哭推广高新公司网站建设哪家好
  • 西安网站建设企业wordpress自定义用户信息
  • 自己电脑做网站服务器小工具网站开发的标准
  • 用asp做的一个网站实例源代码网站建设的来源
  • 平台网站如何优化太阳伞网络营销策划书
  • 网站百度提示风险网站app建设图片素材
  • 做网站建设怎么样二级建造师考试试题
  • 做网站 套模板 后端潍坊 网站
  • 驻马店百牛网站建设wordpress动静分离七牛
  • 网站如何做淘宝客东莞网站建设方案推广
  • 怎样优化自己的网站拓者设计吧邀请码怎么弄
  • 兼职网站开发需求柳江企业网站建设公司
  • 深圳网站优化课程哪里学php做网站都需要学什么
  • 网站的技术维护一般要做些什么做网站用什么平台