JS FormData上传文件的设置方法


Posted in Javascript onJuly 05, 2017

使用FormData上传文件时,总是获取不到req.file对象。发现是没有配置对FormData导致。

这里我是在vue中使用axios发送的请求,配置代码如下。重点地方给出注释

<form id="uploadform" method="POST" enctype="multipart/form-data" :action="postImgApi" ref="uploadform">
 <input type="file" name="imagefile" @change="upload" ref="inputfile">
</form>
let uploadform = this.$refs.uploadform
let inputfile = this.$refs.inputfile
let formData = new FormData(uploadform) //初始化时将form Dom对象传入
formData.append('imagefile', inputfile) //将imagefile键追加进去,值为input-file的dom对象,否则服务端无法获取file
this.$http.post(this.postImgApi, formData, {
 headers: {
  'Content-Type': 'multipart/form-data' //设置post文件的请求头
 }
}).then(res => {
 debugger
 this.textarea = res.data
})

这两天也是从网上找了各种demo和资料,发现使用自己的请求是后台就是获取不到文件,而使用form表单的submit却是可以。最开始分析是否是自己的请求头的问题,发现content-type正确且带有boundary,content-length也正常,说明请求头这里应该是没问题的。所以从FormData这里入手,几次尝试后寻找到上面代码的方式可以正常运行。这里后面有时间还是要详细分析下FormData,好好学习下在给出深度的解释。

以上所述是小编给大家介绍的JS FormData上传文件的设置方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
List Installed Hot Fixes
Jun 12 Javascript
JavaScript中使用构造函数实现继承的代码
Aug 12 Javascript
javaScript 删除字符串空格多种方法小结
Oct 24 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
Jun 26 Javascript
AngularJS 依赖注入详解及示例代码
Aug 17 Javascript
jQuery与js实现颜色渐变的方法
Dec 30 Javascript
JS中setTimeout和setInterval的最大延时值详解
Feb 13 Javascript
ionic2打包android时gradle无法下载的解决方法
Apr 05 Javascript
React Native悬浮按钮组件的示例代码
Apr 05 Javascript
解决使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js问题
Aug 30 Javascript
基于Vue中的父子传值问题解决
Jul 27 Javascript
vue+axios 拦截器实现统一token的案例
Sep 11 Javascript
JS实现unicode和UTF-8之间的互相转换互转
Jul 05 #Javascript
js 获取元素的具体样式信息getcss(实例讲解)
Jul 05 #Javascript
Angular 2父子组件数据传递之@Input和@Output详解(下)
Jul 05 #Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
Jul 05 #Javascript
JS鼠标滚动分页效果示例
Jul 05 #Javascript
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
Jul 05 #jQuery
Angular 2父子组件数据传递之@Input和@Output详解 (上)
Jul 05 #Javascript
You might like
vBulletin Forum 2.3.xx SQL Injection
2006/10/09 PHP
PHP字符转义相关函数小结(php下的转义字符串)
2007/04/12 PHP
php实现对两个数组进行减法操作的方法
2015/04/17 PHP
php生成动态验证码gif图片
2015/10/19 PHP
php gd等比例缩放压缩图片函数
2016/06/12 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
2018/04/21 PHP
PHP测试框架PHPUnit组织测试操作示例
2018/05/28 PHP
jQuery基本过滤选择器使用介绍
2013/04/18 Javascript
基于iframe实现类似于ajax的页面无刷新
2014/05/31 Javascript
JavaScript实现99乘法表及隔行变色实例代码
2016/02/24 Javascript
jQuery插件form-validation-engine正则表达式操作示例
2017/02/09 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
基于D3.js实现时钟效果
2018/07/17 Javascript
JavaScript高级函数应用之分时函数实例分析
2018/08/03 Javascript
微信小程序自定义组件传值 页面和组件相互传数据操作示例
2019/05/05 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
2019/05/14 jQuery
JS实现点击发送验证码 xx秒后重新发送功能
2019/07/30 Javascript
React+TypeScript+webpack4多入口配置详解
2019/08/08 Javascript
使用JS监听键盘按下事件(keydown event)
2019/11/07 Javascript
JavaScript命令模式原理与用法实例详解
2020/03/10 Javascript
jQuery实现简单全选框
2020/09/13 jQuery
微信小程序实现可长按移动控件
2020/11/01 Javascript
python脚本实现分析dns日志并对受访域名排行
2014/09/18 Python
Scrapy基于selenium结合爬取淘宝的实例讲解
2018/06/13 Python
Python读取实时数据流示例
2019/12/02 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
Carolina Lemke Berlin澳大利亚官网:时尚太阳镜品牌
2019/09/17 全球购物
EM Cosmetics官网:由彩妆大神Michelle Phan创办的独立品牌
2020/04/27 全球购物
秋季红领巾广播稿
2014/01/27 职场文书
合伙协议书
2014/04/23 职场文书
任命书模板
2014/06/04 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
父亲去世追悼词
2015/06/23 职场文书
新闻稿格式范文
2015/07/18 职场文书
2019年思想汇报
2019/06/20 职场文书
Python re.sub 反向引用的实现
2021/07/07 Python