码迷,mamicode.com
首页 > Web开发 > 详细

jsbase64转成file上传服务器

时间:2020-06-18 10:49:49      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:new   array   append   jsb   image   方法   code   ati   ascii   

var myfile = dataURLtoFile(imgUri, Date.now() + ‘.png‘);
var formFile = new FormData();
formFile.append(‘file‘, myfile);

//上传服务器

$.ajax({
url: ‘/index/Image/upImg‘,
data: formData,
url: ‘/index/Image/zhengshu_upImg‘,
data: formFile,
type: "post",
//ajax2.0可以不用设置请求头,但是jq帮我们自动设置了,这样的话需要我们自己取消掉
contentType: false,
//取消帮我们格式化数据,是什么就是什么
processData: false,
success: function (data) {
console.log(data)
return data.data.src;
callNative.download(data.data.src);
}
});

 

// 把base64 转换成文件对象
function dataURLtoFile(base64Str, fileName) {
var arr = base64Str.split(‘,‘),
mime = arr[0].match(/:(.*?);/)[1], //base64解析出来的图片类型
bstr = atob(arr[1]), //对base64串进行操作,去掉url头,并转换为byte atob为window内置方法
len = bstr.length,
ab = new ArrayBuffer(len), //将ASCII码小于0的转换为大于0
u8arr = new Uint8Array(ab); //
while (len--) {
u8arr[len] = bstr.charCodeAt(len)
};
// 创建新的 File 对象实例[utf-8内容,文件名称或者路径,[可选参数,type:文件中的内容mime类型]]
return new File([u8arr], fileName, {
type: mime
})
};

jsbase64转成file上传服务器

标签:new   array   append   jsb   image   方法   code   ati   ascii   

原文地址:https://www.cnblogs.com/zwvs/p/13156016.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!