axios实现简单文件上传功能


Posted in Javascript onSeptember 25, 2019

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

前台页面:

引入axios js文件

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

HTML:

<input type="file" name="img"/>
<br>
<span οnclick="upload()">上传图片</span>

JS:

function upload() {
 alert("上传")
 let file = document.getElementsByName('img')[0].files[0];
 
 let formData = new FormData();
 formData.append("uploadFile",file,file.name);
 
 const config = {
 headers: { "Content-Type": "multipart/form-data;boundary="+new Date().getTime() }
 };
 
 axios
 .post("/file/upload",formData,config)
 .then(function (response) {
  console.log(response);
 })
 .catch(function (error) {
  console.log(error);
 });
}

后台接收:

@PostMapping(value = "/upload")
public String upload(HttpServletRequest request){
 logger.info("开始上传……");
 
 MultipartHttpServletRequest servletRequest = (MultipartHttpServletRequest) request;
 Map<String, MultipartFile> fileMap = servletRequest.getFileMap();
 for (Map.Entry entry : fileMap.entrySet()) {
 logger.info("name : {}",entry.getKey());
 MultipartFile multipartFile = (MultipartFile) entry.getValue();
 try {
  FileUtil.writeFile(multipartFile.getInputStream(),path+"/12_"+multipartFile.getOriginalFilename());
 } catch (IOException e) {
  e.printStackTrace();
 }
 }
 return "{'result':'OK'}";
}
 
 
@RequestMapping(value = "/uploadII")
public String uploadII(@RequestParam("uploadFile") MultipartFile uploadFile){
 logger.info("upload : {}",uploadFile);
 try {
 InputStream inputStream = uploadFile.getInputStream();
 String originalFilename = uploadFile.getOriginalFilename();
 logger.info("file : {}",originalFilename);
 FileUtil.writeFile(inputStream,path+"/"+originalFilename);
 } catch (IOException e) {
 e.printStackTrace();
 }
 return "{'result':'OK'}";
}

pox.xml:

<!-- 文件上传 -->
<dependency>
 <groupId>commons-fileupload</groupId>
 <artifactId>commons-fileupload</artifactId>
 <version>1.3</version>
</dependency>

注入CommonsMultipartResolver:

@Bean
public CommonsMultipartResolver initCommonsMultipartResolver(){
 CommonsMultipartResolver resolver = new CommonsMultipartResolver();
 resolver.setMaxUploadSize(104857600);
 resolver.setMaxInMemorySize(4096);
 return resolver;
}

GitHub:axios

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

Javascript 相关文章推荐
网页前台通过js非法字符过滤代码(骂人的话等等)
May 26 Javascript
window.dialogArguments 使用说明
Apr 11 Javascript
jQuery中toggleClass()方法用法实例
Jan 05 Javascript
jQuery.prop() 使用详解
Jul 19 Javascript
JavaScript ES5标准中新增的Array方法
Jun 28 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
Sep 05 Javascript
详解JS-- 浮点数运算处理
Nov 28 Javascript
最常见和最有用的字符串相关的方法详解
Feb 06 Javascript
jQuery中的deferred对象和extend方法详解
May 08 jQuery
js实现移动端tab切换时下划线滑动效果
Sep 08 Javascript
使用Layui搭建后台管理界面的操作方法
Sep 20 Javascript
基于js实现逐步显示文字输出代码实例
Apr 02 Javascript
layer弹出层取消遮罩的方法
Sep 25 #Javascript
QML实现圆环颜色选择器
Sep 25 #Javascript
解决layer 关闭当前弹窗 关闭遮罩层 input值获取不到的问题
Sep 25 #Javascript
微信小程序实现一张或多张图片上传(云开发)
Sep 25 #Javascript
Layer组件多个iframe弹出层打开与关闭及参数传递的方法
Sep 25 #Javascript
layer 关闭指定弹出层的例子
Sep 25 #Javascript
layer关闭弹出窗口触发表单提交问题的处理方法
Sep 25 #Javascript
You might like
PHP获取网卡地址的代码
2008/04/09 PHP
php中实现用数组妩媚地生成要执行的sql语句
2015/07/10 PHP
PHP+apc+ajax实现的ajax_upload上传进度条代码
2016/01/25 PHP
详解PHP5.6.30与Apache2.4.x配置
2017/06/02 PHP
php 中htmlentities导致中文无法查询问题
2018/09/10 PHP
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
jquery表单验证使用插件formValidator
2012/11/10 Javascript
json对象转字符串如何实现
2012/12/02 Javascript
node.js中的buffer.toJSON方法使用说明
2014/12/14 Javascript
JS实现鼠标滑过折叠与展开菜单效果代码
2015/09/06 Javascript
很棒的js选项卡切换效果
2016/07/15 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
2016/09/08 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
JavaScript获取ul中li个数的方法
2017/02/13 Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
2018/03/06 Javascript
JavaScript中的连续赋值问题实例分析
2019/07/12 Javascript
通过实例了解Javascript柯里化流程
2020/03/03 Javascript
vue中element 的upload组件发送请求给后端操作
2020/09/07 Javascript
[01:04:32]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第二场 2月23日
2021/03/11 DOTA
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
python中的reduce内建函数使用方法指南
2014/08/31 Python
利用Python中的pandas库对cdn日志进行分析详解
2017/03/07 Python
python图像常规操作
2017/11/11 Python
python批量解压zip文件的方法
2019/08/20 Python
Keras-多输入多输出实例(多任务)
2020/06/22 Python
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
给公司的建议书范文
2014/05/13 职场文书
暑期社会实践先进个人主要事迹
2014/05/22 职场文书
开展读书活动总结
2014/06/30 职场文书
集体生日活动方案
2014/08/18 职场文书
小学生教师节演讲稿
2014/09/03 职场文书
党的群众路线领导班子整改方案
2014/09/27 职场文书
工程资料员岗位职责
2015/04/13 职场文书
2015年施工员工作总结范文
2015/04/20 职场文书
公司表扬信格式
2015/05/04 职场文书
2016年三八节红领巾广播稿
2015/12/17 职场文书