vue的axios实现url传参,vue请求后端数据axios

  vue的axios实现url传参,vue请求后端数据axios

  这篇文章主要为大家详细介绍了vue axios java实现文件上传功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  本文实例为大家分享了vue axios java实现文件上传的具体代码,供大家参考,具体内容如下

  

背景

  vue.js axios元素前端,Java后台实现的文件上传,简单例子

  

前端代码

  document.vue

  模板

  差异

  el-row class=action-row

  el-col :span=9

  El-button type= primary icon= El-icon-plus @ click= add size= medium 新增/el-button

  /el-col

  /el-row

  !-列表-

  el-row

  El-table:data= docs ref= docs style= width:100% stripe @ sort-change= sort v-loading= loading

  El-table-column prop= doc文件名 label=文件名称可排序align=居中最小宽度= 10% /El-表格-列

  El-table-column prop= doc filetype label=文件类型可排序align=居中最小宽度= 10% /El-表格-列

  El-table-column prop= create time label=上传时间可排序align=居中最小宽度= 10% /El-表格-列

  /el-table

  div class=分页

  埃尔分页

  @size-change=handleSizeChange

  @ current-change= handlePageChange

  :current-page=page

  :page-size=limit

  :total=total

  :page-size=[10,20,50,100]

  布局=总计,大小,上一页,分页,下一页,跳转

  :background=true

  /El-分页

  /div

  /el-row

  !-新建按钮弹出框-

  el-dialog title=上传附件:可见。sync=编辑可见:append-to-body= true width= 450 px

  El-form:model= GTS文档:rules= rules ref= GTS文档 label-width= 120 px label-position= left size= small class= edit-form

  El-表单-项目标签=上传附件prop=file

  El-upload ref= upload action= doup load :limit= limit num :auto-upload= false :on-change= file change :on-exceed= exceed file :file-list= file list

  El按钮尺寸=小平面选择文件/el-button

  /El-上传

  /El-表单-项目

  /el格式

  div slot=footer class=对话框-页脚

  El-button @ click= edit visible=false 取消/el-button

  El-button type= primary @ click= save 确定/el-button

  /div

  /el-dialog

  /div

  /模板

  脚本

  从@/api/gts/document导入{ list,del,create };

  导出默认值{

  名称:“GTS文档,

  data() {

  返回{

  editvisible: false,//新增弹出框显示标识:默认不显示

  全球电信系统(Global Telecommunication System)文档:{

  //随附单据表单

  文档类型:"",

  文档编号: ,

  gtsId: ,

  taskId: ,

  文件:""

  },

  我更新:假的,

  limitNum: 1,

  文件列表:[],

  文档:[],

  加载:假,

  第一页,

  限制:10,

  总计:0,

  规则:{},

  };

  },

  已创建:函数(){

  这个。search();

  },

  方法:{

  search() {

  //初始化列表

  列表(this.page,this.limit,this .$route.query.gtsId).然后(v={

  if (ok==v.data.msg) {

  这个。文档=v .数据。行;

  这个。总计=v .数据。总计;

  }

  });

  },

  //新增按钮点击事件

  add() {

  this.editvisible=true

  这个. nextTick(()={

  this.isupdate=false

  这个参考文献。GTS文件。重置字段();

  });

  },

  //文件超出个数限制时的校验

  超出文件(文件,文件列表){

  这个. notify.warning({

  标题:这个. t(com.warning ),

  留言:这个. t( com。仅选择)` $ { this。限制数量} `这个.$t(com.someFile )

  });

  },

  //文件状态改变时的事件

  文件更改(文件,文件列表){

  这个。GTS文件。文件=文件。生的;

  },

  //保存

  save() {

  这个参考文献gtsDocument.验证(有效={

  如果(有效){

  let formData=new formData();

  让文件=这个。GTS文件。文件;

  formData.append(file ,file);

  如果(!文件){

  归还这个message.warning(请选择上传附件);

  }

  创建(表单数据).然后(resp={

  if (ok==resp.data.msg) {

  this.editvisible=false

  这个message.success(数据保存成功);

  这个。search();

  这个参考文献。上传。清除文件();

  }否则{

  这个message.error(保存失败);

  }

  });

  }

  });

  },

  handlePageChange(i) {

  这个。page=I;

  这个。search();

  },

  handleSizeChange(i) {

  这个。极限=I;

  这个。search();

  },

  }

  };

  /脚本

  style rel=stylesheet/css 。设置形式100 . El-表单-项目_ _标签{

  填充-右:30px

  }

  /风格

  文档。射流研究…

  从@/实用程序/请求导入超文本传送协议(Hyper Text Transport Protocol的缩写)

  从" axios "导入爱可信

  导出函数创建(表单数据){

  返回axios({

  URL: http://localhost:8080/solvay-e海关//GTS/documents/add ,

  方法: post ,

  数据:formData,

  withCredentials: true //与甜饼干交叉

  })

  }

  导出功能列表(页面,限额,id) {

  返回http.post(gts/documents ,{ page,limit,id })

  }

  后台代码

  控制器层

  /**

  * p描述:附件上传/p

  * @param文件上传附件

  * @返回

  */

  @ResponseBody

  @PostMapping(/documents/add )

  公共字符串添加附加(@ request param( file )多部分文件文件)引发IOException {

  //获取文件名称

  字符串fileName=file。getoriginalfilename();

  if (StringUtils.isBlank(文件名)){

  返回jsonfailed(文件不能为空);

  }

  //获取文件的大小

  长文件大小=文件。getsize();

  如果(文件大小10 * 1024 * 1024) {

  返回jsonfailed(上传文件大小超出限定大小10M’);

  }

  //获取文件的扩展名

  //字符串扩展名=文件名utils。获取扩展名(文件名);

  //获取配置路径

  string path= D:/home/e customs/upload/;

  字符串new path=path uuid。随机uuid().toString().replaceAll(-, ) \ \ ;

  文件新目录=新文件(新路径);

  如果(!newDir.exists()) {

  新目录。mkdirs();//目录不存在的情况下,创建目录

  }

  文件新文件=新文件(新目录,文件名);

  //通过CommonsMultipartFile的方法直接写文件(注意这个时候)

  文件。转移到(新文件);

  返回"确定";

  }

  实现截图如下

  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: