Ajax文件上传,vue axios文件上传

Ajax做文件上传就会有兼容性的问题。只有一些高版本的浏览器可以实现文件上传的功能。Ie6 ie7 低版本浏览器不能实现。因为ajax文件上传用到Formdata,它是h5新增的,有兼容问题,低版本浏览器不支持。

数据往formdata中加:

调用formdata的append方法,用原生dom对象的file的第0个获取到上传的文件。发aiax请求,用post请求方式,添加属性。

原生ajax上传代码:





  
  




  

data

type

Jquery ajax上传代码:

注意:在ajax发送请求时要加上以下三个属性:不加会报错

Cache:false

processData:false

contentType:false





  
  
  




  

data

type

Vue axios上传代码:

      let formData = new FormData();
      formData.append('type', input1.value);
      formData.append('data', data.files[0]);

      axios({
        method: 'post',
        url: "请求接口",
        data: formData,
        headers: {
          'Content-Type': 'multipart/form-data'
        }
      })
        .then(res => {
        })
        .catch(err => {
        });

  

你可能感兴趣的:(Ajax文件上传,vue axios文件上传)