js实现pdf、excel文件无预览直接下载

javascript 复制代码
          // pdf、xlsx或其他文件无预览下载
          const url = '你的文件url链接'
          let fileName = url.substring(url.lastIndexOf('/') + 1)
          console.log("fileName--",fileName)
          let isPdf = url.endsWith('.pdf')
          const request = new XMLHttpRequest();
          request.responseType = 'blob';
          request.open('GET', res.data.url);
          request.onload = function () {
            const link = document.createElement('a');
            document.body.appendChild(link);
            this.response.arrayBuffer().then(buf => {
              const blob = new Blob([buf]);
              const url = URL.createObjectURL(blob);
              link.style.display = 'none';
              link.target = '_blank';
              link.download = fileName;
              link.href = url;
              link.click();
              document.body.removeChild(link);
              window.URL.revokeObjectURL(url);
            });
          };
          request.send();
相关推荐
10年前端老司机1 小时前
什么!纯前端也能识别图片中的文案、还支持100多个国家的语言
前端·javascript·vue.js
magic 2452 小时前
模拟 AJAX 提交 form 表单及请求头设置详解
前端·javascript·ajax
只喜欢赚钱的棉花没有糖7 小时前
http的缓存问题
前端·javascript·http
让梦想疯狂7 小时前
开源、免费、美观的 Vue 后台管理系统模板
前端·javascript·vue.js
葡萄糖o_o8 小时前
ResizeObserver的错误
前端·javascript·html
勇太的数分之旅8 小时前
Excel大厂自动化报表实战(互联网金融-数据分析周报制作下)
信息可视化·金融·数据分析·自动化·excel·数据可视化
sunbyte8 小时前
50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | AnimatedNavigation(动态导航)
前端·javascript·vue.js·tailwindcss
JustHappy9 小时前
啥是Hooks?为啥要用Hooks?Hooks该怎么用?像是Vue中的什么?React Hooks的使用姿势(下)
前端·javascript·react.js
江城开朗的豌豆9 小时前
Vue中Token存储那点事儿:从localStorage到内存的避坑指南
前端·javascript·vue.js
江城开朗的豌豆10 小时前
MVVM框架:让前端开发像搭积木一样简单!
前端·javascript·vue.js