base64图片转二进制 文件

//请求的域名
export let baseURL = "http://lj.tieqiao.shop";

/*将base64转换为file*/
export function dataURLtoFile(dataurl, filename) { //将base64转换为文件
  var arr = dataurl.split(','),
    mime = arr[0].match(/:(.*?);/)[1],
    bstr = atob(arr[1]),
    n = bstr.length,
    u8arr = new Uint8Array(n);
  while (n--) {
    u8arr[n] = bstr.charCodeAt(n);
  }
  return new File([u8arr], filename, {
    type: mime
  });
}

// ajax上传图片——文件流方式
// 传统的方法调用时,无法确定异步请求是否成功的时机,所以使用promise,在成功是调用成功的回调resolve
export function upload(base64, name) {
  return new Promise((resolve, reject) => {
    let file = dataURLtoFile(base64, name);
    // 实例化FormData
    var formdata = new FormData();
    // 将文件信息存入formdata,键名为file
    // formdata会将文件信息序列化为ajax可识别的数据类型
    formdata.append("file", file);
    $.ajax({
      type: "post",
      url: `${baseURL}/api/common/upload?token=7f9e2ca2-ea65-4ca9-9f71-2945fc49bd2c`,
      data: formdata, // formdata直接赋值给data
      processData: false, //formdata已将数据序列化,无需在处理
      contentType: false, //formdata无需设置请求头
      success: function (res) {
        resolve(res.data)
      }
    });
  })
}

https://blog.csdn.net/weixin_43848576/article/details/102310700

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值