【前端复盘】application/x-www-form-urlencoded 与 multipart/form-data 的区别

193 阅读1分钟

application/x-www-form-urlencoded 和 multipart/form-data 是两种常用的 HTTP 请求内容类型,它们在编码方式、数据类型和用途上有一些区别。

  1. application/x-www-form-urlencoded:

    • 这是一种常见的编码方式,用于将表单数据编码为 URL 字符串。
    • 它将表单字段和对应的值通过等号(=)和和号(&)连接起来,例如 key1=value1&key2=value2
    • 这种编码方式适用于简单的表单数据,如文本、数字等。
    • 在使用 application/x-www-form-urlencoded 类型时,请求的 Content-Type 通常为 application/x-www-form-urlencoded
  2. multipart/form-data:

    • 这是一种更复杂的编码方式,用于将表单数据编码为多个部分(part),每个部分可以包含不同类型的文件或数据。
    • 它使用 MIME(Multipurpose Internet Mail Extensions)格式来封装数据,包括头部信息和主体部分。
    • 这种编码方式适用于上传文件、发送多种类型的数据(如文本、图片、视频等)。
    • 在使用 multipart/form-data 类型时,请求的 Content-Type 通常为 multipart/form-data

总之,application/x-www-form-urlencoded 和 multipart/form-data 的主要区别在于编码方式、数据类型和用途。前者适用于简单的表单数据,后者适用于上传文件和发送多种类型的数据。