从 Base64 编码的字符串中检索 MIME 类型

Retrieve MIME type from Base64 encoded String

假设一个文件(例如 myfile.jpeg)以 Base64 字符串编码并提供给我。 我无法知道文件类型是什么。 我想将字符串解码为文件(本例中为图像)。 我如何知道文件的类型(例如 jpeg)?

一般来说,一个 base 64 编码的字符串可以包含任何数据,所以没有办法知道它的文件类型。

要确定它是否是 JPEG 图像的实例,您需要对其进行 base64 解码,然后执行类似检查其 magic number 的操作,这有助于告诉您文件 不是。您仍然需要做更多的工作来确定它是否是有效的 JPEG 图片。

数据:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAMSURBVBhXY/j//z8ABf4C/qc1gYQAAAAASUVORK5CYII=

是示例图片。只需将它与第一个斜杠分开并获得数组索引 1。假设图像来自受信任的客户端。