gpt4 book ai didi

javascript - 将图像从base64转换为图像并保存在django的数据库中

转载 作者:搜寻专家 更新时间:2023-10-31 08:56:22 25 4
gpt4 key购买 nike

我正在尝试导出一个表示从 Canvas html5 中获取的图像的字符串 base64,这是 javascript 中的代码:

var canvas1 = $("#canvas1")[0];
var ctx1 = canvas1.getContext('2d');
dataURL1 = canvas1.toDataURL();

我使用 ajax 将图像发送到服务器:

$.ajax({
type: "POST",
url: "/regiter_respuesta_agilidad/",
data:{
'imagen1': dataURL1,
}
});

在 django 的 views.py 中,我使用 base64.b64decode 将字符串导出为图像:

imagen1 = request.POST['imagen1']
image_data = base64.b64decode(imagen1)
imagene = ContentFile(image_data, 'imagen1.png')
answer = Answer(imagen=imagene)

在 models.py 中我有:

class Answer(models.Model):
imagen = models.ImageField(upload_to=url)

问题是保存图像时,文件 imagen1.png 已损坏,我无法打开它,有人可以帮我解决这个问题吗?,或者有其他方法可以做到这一点吗?非常感谢。

最佳答案

我猜您需要从 canvas.toDataURL(); 返回的数据 URI 中删除 data:

快速谷歌搜索发现了一些设计用于在 python 中解析数据 uri 的代码 https://gist.github.com/zacharyvoase/5538178另一个:dataurl.py

关于javascript - 将图像从base64转换为图像并保存在django的数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20037672/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com