谁能解释一下
Base64
的优点是什么Multipart
我知道 Multipart 比它更快
...Base64
但是仍然有很多开发人员在使用 Base64...我研究了两个文档,但我不清楚
Base64
Base64 是一种通过将二进制数据转换为 radix-64 表示形式将二进制数据编码为 ASCII 字符格式的方法。
我建议您永远不要使用 Base64 将大型文件/数据上传到服务器,因为它会转换整个数据并将其发布到服务器。
多部分
多部分是一种以字节为单位的部分形式将文件/数据上传到服务器的方法。 Multipart/form-data 应用于表单,以便您可以以多部分表单发送所有内容,也包括“常规”数据。
Multipart 是 http 协议的一部分。参见
https://stackoverflow.com/a/19712083/5694629
Base64 是一种将任意内容转换为可序列化形式进行传输的方法。
Base64 编码: Base64 编码是一种以 ASCII 文本格式表示二进制数据的方法。它采用有限的字符集(如 A-Z、a-z、0-9、+、/)和填充字符(如“=”)将二进制数据转换为基于文本的格式。
优点:
缺点:
当您需要在基于结构化文本的文档中包含二进制数据(例如在 JSON 负载中嵌入图像或其他二进制资源)时,Base64 编码非常有用。
分段文件上传:
分段文件上传是在 HTTP 请求中发送二进制文件的标准方法。它对 HTTP POST 请求使用“multipart/form-data”内容类型。在此方法中,二进制文件作为部分直接包含在请求正文中,您可以添加元数据,例如文件名和内容类型
- 优点:
缺点:
需要额外的 HTTP 标头和更复杂的请求结构 与 Base64 编码相比。
将二进制数据嵌入结构化数据可能并不那么简单 基于文本的格式,例如 JSON。
当您需要高效传输二进制文件(尤其是大文件)并需要有关这些文件的元数据时,分段文件上传是首选。常用于用户通过Web表单上传图片、文档或其他文件的场景。
当您需要高效传输二进制文件(尤其是大文件)并需要有关这些文件的元数据时,分段文件上传是首选。常用于用户通过Web表单上传图片、文档或其他文件的场景。