vue上传formdata格式数据(axioes)

vue.js 上传formData数据到后台(其他js类似)

 

调用方式还是通过post方式

请求类型要设置一下

config.headers["content-type"] = "multipart/form-data";

 

然后上传的时候分2种情况

1、后台可以直接解析formData格式的,直接创建一个FormData对象提交到后台

复制代码
let forms = new FormData()

forms.append('name', 'test')
forms.append('age', ''XXX')

let files = document.getElementById('file').files

// 上传多个文件
Array.from(files).forEach(item => {
    forms.append('file', item)
})

axios({
  method: 'post',
  url: url,
  data:forms
})
复制代码

2、后台不能直接解析formData格式的,要把文件和其他参数拆开提交

复制代码
      <input @change="uploadclick" type="file" accept="image/*" style="display:none"  />    

       uploadclick: function(e) {    

        var file = e.target.files[0]
文件  let formdata = new FormData();
          formdata.append("dataFile", file);
参数  let params = {
          name: 'XXX'
        }

}

这里axioes封装了

 http({
      method: "post",
      url: url,
      formdata,
      params
    })
复制代码

 

 

 

 

posted @   xiaoxiaoxigua  阅读(1668)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示