axios+FormData文件上传

Posted s313139232

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了axios+FormData文件上传相关的知识,希望对你有一定的参考价值。

axios+FormData文件上传

原理:FormData上传

创建一个FormData对象,将得到的文件流对象放在FormData内,然后使用axios上传

注意:

1.请求头设置

headers: { ‘Content-Type‘: ‘multipart/form-data‘ }

2.FormData对象

无论是用input type=“file”还是一些框架的上传组件,都可以的到一个file文件流,详见代码展示

代码:

我是使用的是iview的Upload组件

<Upload :before-upload="handleUpload"
              accept=".rar"
              :format="[‘.rar‘]"
              :max-size=102400
              action="#">
                <Button size="small">选择文件</Button>
</Upload>

  

/* 上传文件 */
export const importFile = data => request({ url: ‘/ktdb/projectAdmission/import‘, method: ‘post‘, headers: { ‘Content-Type‘: ‘multipart/form-data‘ }, data })

  

handleUpload (file) {
      // 创建FormData对象
      let param = new FormData()
     // 将得到的文件流添加到FormData对象
      param.append(‘file‘, file, file.name)
      importFile(param).then((res) => {
        console.log(res)
    }
}

  

钻研不易,转载请注明出处。。。。。。

 

以上是关于axios+FormData文件上传的主要内容,如果未能解决你的问题,请参考以下文章

vue+axios通过formdata提交参数和上传文件

关于vue+axios上传文件的踩坑分析

使用axios+formdata+vue上传图片遇到后台接受不到图片的值的问题

axios/laravel/formdata 发布请求为空

axios04-文件上传

React axios 多文件上传