MIME 是 “Multipurpose Internet Mail Extensions”(多用途互联网邮件扩展协议) 的缩写。虽然它最初是为电子邮件设计的,但如今广泛用于 HTTP/Web 上传下载、API 通信、文件格式识别等场景,尤其常出现在 Content-Type、文件扩展名与文件识别相关的地方。
常见格式
1、纯文本:MIME类型text/plain,.txt。
2、HTML:MIME类型text/html,.html/
3、CSS:MIME类型text/css,.css。
4、JSON:MIME类型application/json,.json。
5、XML:MIME类型application/xml,.xml。
6、PNG 图片:MIME类型image/png,.png。
7、JPEG 图片:MIME类型image/jpeg,.jpg, .jpeg。
8、PDF:MIME类型application/pdf,.pdf。
9、ZIP:MIME类型application/zip,.zip。
10、MP3:MIME类型audio/mpeg,.mp3。
11、MP4 视频:MIME类型video/mp4,.mp4。
MIME 和文件扩展名的关系
.jpg → image/jpeg
.json → application/json
.txt → text/plain
在 macOS / iOS 中,通常不会手动写 MIME 类型,但系统底层或网络请求中会自动处理。
MIME使用示例
1、在HTTP请求中使用
Content-Type: application/json
代表请求或响应体是 JSON 格式。
2、上传文件时指定 MIME
例如 iOS 上传图片:
request.setValue("image/png", forHTTPHeaderField: "Content-Type")
否则服务器可能不知道上传的是图片、视频还是文本。
3、用于文件识别(转换为 UTI / UTType)
可以通过 MIME 类型查找文件类型:
import UniformTypeIdentifiers
let type = UTType(mimeType: "application/json") // ⬅ 转为 Swift 类型安全的类型
print(type?.identifier) // "public.json"
MIME 和 UTI / UTType 的区别?
1、格式:MIME 类型格式为” application/json”,UTI/UTType格式为“public.json”。
2、起源:MIME类型起源于互联网/HTTP,UTI/UTType起源于Apple平台标准。
3、用途:MIME用于网络传输、内容识别,UTI/UTType用于系统文件类型识别、导入导出。
总结
MIME是一种内容类型标识字符串,用于HTTP、API通信、文件上传、内容识别。
和文件扩展名可以互相转换,例如 .json → application/json。
相关文章
1、Apple类型标识符UTType:https://fangjunyu.com/2025/07/05/apple%e7%b1%bb%e5%9e%8b%e6%a0%87%e8%af%86%e7%ac%a6uttype/
2、Apple文件和数据类型UTI:https://fangjunyu.com/2025/07/05/apple%e6%96%87%e4%bb%b6%e5%92%8c%e6%95%b0%e6%8d%ae%e7%b1%bb%e5%9e%8b%e7%9a%84uti/