一、前端代码(将图片转换为base64)
$('#input').change(function(event) {
function loadImg(){
//获取文件
var file = $("#input")[0].files[0];
//创建读取文件的对象
var reader = new FileReader();
//创建文件读取相关的变量
// var imgFile;
//为文件读取成功设置事件
reader.onload=function(e) {
imgFile = e.target.result;
};
//正式读取文件
reader.readAsDataURL(file);
}
loadImg();
});
二、django代码
1、接收到前端传来的base64后需要做一些处理

这个是请求中携带的base64图片,这样的base64放在前端可以直接使用,但是python中不可以
我们需要将data:image/jpeg;base64,这段删除掉,可以直接使用split(',')
2、去掉不需要的部分后,使用base64解编码
import base64 data = base64.b64decode(b64_data)
解码后可以保存在本地
with open('test.jpeg', 'wb') as f: f.write(data)
当然,也可以上传到存储服务器
我是用的是网易云的对象存储,所以直接把二进制丢给上传文件函数处理