页面结构

<el-upload style="width: 93%" action="/stap/systemManage/weakPassword/excelImport" accept=".xls,.xlsx" name="assetFile" multiple ref="upload" :before-upload="beforeUpload" :show-file-list="false" :http-request="uploadFile">
<el-input class="input-with-select" placeholder="请选择xlsx/xls格式文件上传" v-model="input3" >
<el-button style="position: relative;left: -0.5rem;" slot="append" type="primary">选择文件</el-button>
</el-input>
</el-upload> <el-button type="primary" @click="submit">提交</el-button> <div @click="downloadTemplate">下载</div>

函数

   // 文件上传前的判断
beforeUpload(file) {
var testmsg = file.name.substring(file.name.lastIndexOf(".") + 1);
const extension = testmsg == "xlsx"||testmsg == "xls";
if (!extension) {
this.$message({
message: "上传文件只能是xlsx或xls格式",
type: "warning",
});
}
return extension;
},
//文件上传到input框
uploadFile(params) {
this.input3 = params.file.name;
this.formFile = new FormData();
this.formFile.append("file", params.file);
},
//导入请求 (formDate格式请求体)
submitAsset() {
+ if (this.input3 == "") {
+ this.$message({
+ type: "warning",
+ message: "请选择想要上传的文件!",
+ });
+ } else {
+ this.importLoading = true;
+ this.$axios({
+ url: "/stap/systemManage/weakPassword/excelImport",
+ method: "post",
+ data: this.formFile,
+ timeout: 10 * 60 * 1000,
+ headers: {
+ "Content-Type": "multipart/form-data",
+ },
+ }).then((res) => {
+ if (res.data.result) {
+ this.$message({type: 'success',message:res.data.message||'弱密码字典列表导入成功'});
+ this.$emit("tableInit"); //导入后刷新列表
+ this.closeDialog();
+ this.input3=''
+ }else{
+ this.$message.error(res.data.message)
+ }
+ })
+ .catch(() => {
+ }).finally(()=>{
+ this.importLoading = false;
+ })
}
},
//下载文件
downloadTemplate(){
this.$axios({method:'get',url:'/stap/systemManage/weakPassword/download',responseType: 'blob'}).then(res=>{
if (res.data.result != false) {
+ this.$message({type: 'success', message: "下载成功!"})
+ let aTag = document.createElement('a');
+ aTag.download = '弱字典密码列表模板.xlsx';
+ aTag.style.display = 'none'
+ let blob = new Blob([res.data],{type:'application/vnd.ms-excel'});
+ aTag.href = URL.createObjectURL(blob);
+ document.body.appendChild(aTag)
+ aTag.click();
+ document.body.removeChild(aTag)
+ }
+ })
+ },

blob对象excel文件上传下载的更多相关文章

  1. ABAP EXCEL 文件上传下载 用SMW0

    T-CODE: SMW0 在这里只介绍二进制数据,HTML模板的上传也一样. 另外也可以用CBO TABLE管理文件 可以看我另一个博文:CBO TABLE管理文件上传下载 选择 二进制 写包名: 进 ...

  2. [SAP ABAP开发技术总结]客户端文本文件、Excel文件上传下载

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  3. 基于Spring Mvc实现的Excel文件上传下载

    最近工作遇到一个需求,需要下载excel模板,编辑后上传解析存储到数据库.因此为了更好的理解公司框架,我就自己先用spring mvc实现了一个样例. 基础框架 之前曾经介绍过一个最简单的spring ...

  4. 文件一键上传、汉字转拼音、excel文件上传下载功能模块的实现

    ----------------------------------------------------------------------------------------------[版权申明: ...

  5. salesforce 零基础学习(四十二)简单文件上传下载

    项目中,常常需要用到文件的上传和下载,上传和下载功能实际上是对Document对象进行insert和查询操作.本篇演示简单的文件上传和下载,理论上文件上传后应该将ID作为操作表的字段存储,这里只演示文 ...

  6. Struts的文件上传下载

    Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...

  7. 艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输)(一)

    艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输) 该系统基于开源的networkComms通讯框架,此通讯框架以前是收费的,目前已经免费并开元,作者是英国的,开发时间5年多,框架很稳定. 项 ...

  8. ssh框架文件上传下载

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 【FTP】FTP文件上传下载-支持断点续传

    Jar包:apache的commons-net包: 支持断点续传 支持进度监控(有时出不来,搞不清原因) 相关知识点 编码格式: UTF-8等; 文件类型: 包括[BINARY_FILE_TYPE(常 ...

  10. JavaWeb实现文件上传下载功能实例解析

    转:http://www.cnblogs.com/xdp-gacl/p/4200090.html JavaWeb实现文件上传下载功能实例解析 在Web应用系统开发中,文件上传和下载功能是非常常用的功能 ...

随机推荐

  1. .net core操作MongoDB

    前言 现实中认识的一个搞java(百万富婆)的大佬,已经转行做抖音主播了,搞技术的只能赶在年前再水一篇博客,不足之处欢迎拍砖,以免误人子弟,呔,真是太难受了 环境准备 .net core 3.1 Mo ...

  2. 手把手教你图文并茂windows10安装VMware创建CentOS-7-x86_64运行linux系统

    VMware是什么 VMWare (Virtual Machine ware)可以使你的计算机上同时运行几个系统.例如windows.DOS.LINUX等同时存在,可以将这些系统像程序似的随时切换,并 ...

  3. Linux基础介绍

    Linux基础介绍 一.运维的本质 运维:运行维护应用程序 岗位需求:自动化运维.DBA.docker+K8s 运维的本质: 1.尽可能保证应用程序24小时不间断运行 2.尽可能保证数据的安全 3.尽 ...

  4. 如何通过Zabbix Docker配置HTTPS访问系统?

    概述 前面文章曾介绍过如果使用docker-compose快速部署一个Zabbix系统,但是部署的Zabbix系统是使用http协议进行访问的.有时候为了保证安全.我们需要配置使用https协议进行访 ...

  5. Unity之GPS定位(高德解析)

    Unity之GPS定位 Unity之GPS定位(高德解析) 前言 开篇 Unity版本及使用插件 正题 创建场景 写脚本 把脚本挂载到场景中 打包发布场景 安装真机并且测试 代码中的==Key==怎么 ...

  6. 【随笔记】NDK 编译开源库 ffmpeg

    一.下载源代码 wget http://ffmpeg.org/releases/ffmpeg-4.4.tar.gz tar -zxvf ffmpeg-4.4.tar.gz 二.编译配置脚本 #! /b ...

  7. 【安全】漏洞复现及修复——CVE-2023-24055 keepass触发器注入获取明文密码

    write by homelander 如要转载请注明出处谢谢:https://www.cnblogs.com/vitalemontea/p/17104168.html 1.前言 [仅供学习使用,切勿 ...

  8. 【论文笔记】FCN全卷积网络

    全卷积网络(FCN)是用于图片语义分割的一种卷积神经网络(CNN),由Jonathan Long,Evan Shelhamer 和Trevor Darrell提出,由此开启了深度学习在语义分割中的应用 ...

  9. 强大的word插件,让工作更高效:不坑盒子 2023版

    不坑盒子简介 很多朋友在工作过程中需要对Word文档进行编辑处理,如果想让Word排版更有效率可以试试小编带来的这款不坑盒子软件,这是一个非常好用的插件工具,专门应用在Word文档中,支持Office ...

  10. P13_协同工作_小程序权限管理的概念以及成员管理的两个方面

    协同工作和发布 - 协同工作 了解权限管理需求 在中大型的公司里,人员的分工非常仔细:同一个小程序项目,一般会有不同岗位.不同角色的员工同时参与设计与开发. 此时出于管理需要,我们迫切需要对不同岗位. ...