1

我有一个非常适合接收 base64 图像的视图。我的问题是,在极少数情况下,它无法识别发送的 jpg 图像。它看起来像None

在网上看,我发现问题出在 lib imghdr 上。我尝试使用 OS lib 来提取扩展,甚至使用 lib 枕头,但我做不到。

有没有人有任何提示?

这是我如何使用 imghdr 的示例:

    def get_file_extension(self, file_name, decoded_file):
        import imghdr

        extension = imghdr.what(file_name, decoded_file)
        if extension == "jpeg":
            extension = "jpg"

        return extension
4

1 回答 1

0

您可以编写一个简单的实用程序函数来提取扩展

def base64_ext(b64str):
    # b64str format example: 'data:image/jpeg;base64, LzlqLzRBQ...'
    fmt, imgstr = b64str.split(';base64,') 
    ext = fmt.split('/')[-1]
    return ext
于 2020-12-01T21:56:48.760 回答