在base64 Django rest fram中保存图像

2024-04-20 13:45:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发我的应用程序(混合),在注册页面上,我必须将所有数据发送到一个使用Django Rest框架制作的API。在

问题是,我可以发送配置文件图片的唯一方法是使用base64编码的字符串。但是我需要在我的服务器上用jpg格式的图像。有人知道我该怎么做吗?在

这是我的api视图:

 class CreateUserView(generics.CreateAPIView):
    serializer_class = UserSerializer
    permission_classes = [AllowAny]
    queryset = User.objects.all().order_by('-date_joined')
    def post(self, request, *args, **kwargs):
        error = 0
        data = request.data

        try:
            name = data['name']
        except KeyError:
            name = ""

        try:
            last_name = data['last_name']
        except KeyError:
            last_name = ""

        # IMAGE IN BASE64    
        try:
            profile_picture = data['profile_picture']
        except KeyError:
            profile_picture = ""

        try:
            username = data['username']
        except KeyError:
            username = ""

        try:
            created_user = User.objects.create(
                first_name = nombre,
                last_name = last_name,
                username = username
            )

            # created_user.set_password(password)
            created_user.save()
            token = Token.objects.create(user=created_user)
        except IntegrityError:
            error = 1

        return Response(error)

这是我的序列化程序:

^{pr2}$

有什么方法可以使用base64并创建jpg?在


Tags: 方法namedataobjectsusernameerrorprofilelast
1条回答
网友
1楼 · 发布于 2024-04-20 13:45:03

您只需使用^{}

from base64 import decodestring

fh = open("imageToSave.jpeg", "wb")
fh.write(str(base64_string).decode('base64')) # or fh.write(decodestring(base64_string))
fh.close()

相关问题 更多 >