原生JS上传文件

fileUpload(file){

    let xhr = new XMLHttpRequest();   //new一个XMLHttpRequest对象

    let formData = new FormData();    //new一个form表单,存储要传递的参数

    formData.append("file", file);    //将参数添加到form请求体中,file代表要上传的文件

    formData.append("id", "1");       //可添加多个参数

    xhr.open('POST',"localhost:8000/file/upload", true);  //第三个参数代表是否异步

    xhr.setRequestHeader("Authorization", "token");   //添加请求头token

    let totalProgress = 0;  //文件上传时的文件上传进度

    xhr.upload.onprogress = (e) => {

      //文件上传时的回调函数

      if(e.loaded){

        totalProgress = Math.floor((e.loaded * 100 ) / e.total);

      }

    }

    xhr.send(formData);   //发送请求

    xhr.onreadystatechange = (() => {

      //请求之后的回调函数

      if(xhr.readyState == 4 && xhr.status == 200){

        //当满足上传的条件为接口请求成功

        let res = JSON.parse(xhr.responseText);

        console.log(res)

        //res为接口返回信息

      }

    })

  }

 

/**以上内容为个人笔记,若有疑问,欢迎大家留言。*/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值