如何从golang中的base64编码文件中提取文件扩展名?

如何从golang中的base64编码文件中提取文件扩展名?

问题描述:

我想让用户以base64编码的方式上传文件。 的结果是这样的:如何从golang中的base64编码文件中提取文件扩展名?

data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kA... 

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfAAAAAXNSR0IArs4c6QAAAARnQU... 

所以我想知道什么是idomatic方式来提取编码后的文件字符串的文件扩展名?

+4

有一个看看['dataturl'包(https://github.com/vincent-petithory/ dataurl)。 –

+1

那里没有文件扩展名,那么它如何被提取? – Flimzy

使用字符串/字节函数来提取MIME类型 - 即data:;base64之间的部分足够简单。

然后你可以使用标准的MIME包来从类型扩展名:
https://golang.org/pkg/mime/#ExtensionsByType