base64转图片上传
2024-08-31 12:10:23
不成功,但是有一定的借鉴性 /**
* @param base64Codes
* 图片的base64编码
*/
function sumitImageFile(base64Codes){
console.log(convertBase64UrlToBlob(base64Codes));
var formData = new FormData(); //这里连带form里的其他参数也一起提交了,如果不需要提交其他参数可以直接FormData无参数的构造函数 //convertBase64UrlToBlob函数是将base64编码转换;为Blob
formData.append("imageName",convertBase64UrlToBlob(base64Codes)); //append函数的第一个参数是后台获取数据的参数名,和html标签的input的name属性功能相同
try{ // upload("admin","img","haode",formData);
}catch(e){
console.log(e);
alert("TMD又错了!");
}
//ajax 提交form
$.ajax({
url : url,
type : "POST",
data : formData,
dataType:"json",
processData : false, // 告诉jQuery不要去处理发送的数据
contentType : false, // 告诉jQuery不要去设置Content-Type请求头
success:function(data){
console.log(data);
alert("hahaha");
},
xhr:function(){ //在jquery函数中直接使用ajax的XMLHttpRequest对象
var xhr = new XMLHttpRequest(); xhr.upload.addEventListener("progress", function(evt){
if (evt.lengthComputable) {
var percentComplete = Math.round(evt.loaded * 100 / evt.total);
console.log("正在提交."+percentComplete.toString() + '%'); //在控制台打印上传进度
}
}, false); return xhr;
} });
}
/*---------------------------------------------------------------------------------------------------------------*/
/**
* 将以base64的图片url数据转换为Blob
* @param urlData
* 用url方式表示的base64图片数据
*/
function convertBase64UrlToBlob(urlData){ var bytes=window.atob(urlData.split(',')[1]); //去掉url的头,并转换为byte //处理异常,将ascii码小于0的转换为大于0
var ab = new ArrayBuffer(bytes.length);
var ia = new Uint8Array(ab);
for (var i = 0; i < bytes.length; i++) {
ia[i] = bytes.charCodeAt(i);
}
return new Blob( [ab] , {type : 'image/jpeg'});
}
最新文章
- Qt qml 单例模式
- [原创]南水之源A*(A-Star)算法
- PHP Simple HTML DOM解析器
- 使Asp.net WebApi支持JSONP和Cors跨域访问
- python开发初期及二次开发C api
- sql server 存储过程、事务,增删改
- SQLServer 网络协议(一)
- Archlinux 升级 pacman 时遇到的问题及其解决
- 浏览器录宏重放软件-iMacros
- Django(十八)Model操作补充
- day28元类与异常查找
- 树莓派Opencv张正友棋盘标定法
- 解决Hibernate:could not initialize proxy - no Session(申明:来源于网络)
- Java学习路径及练手项目合集
- linux利用命令将一个盘上的所有复制到另一个盘上
- webpack打包提取css到独立文件
- 蓝桥杯 问题 1117: K-进制数 (递归)
- 如何区分一个系统是redhat centos ubuntu fedora debian中的哪一种
- python笔记02:列表与元素
- 移动端UI设计规范模板参考以及设计规范的好处