¿Qué es la solicitud de multiparte http?

He estado escribiendo aplicaciones para iPhone desde hace un tiempo, enviando datos al servidor, recibiendo datos (a través del protocolo HTTP), sin pensar demasiado en ello. En general, estoy teóricamente familiarizado con el proceso, pero la parte que no conozco es la solicitud HTTP multiparte. Conozco su estructura básica, pero el núcleo se me escapa.

Parece que cada vez que envío algo diferente al texto simple (como fotos, música), tengo que usar una solicitud de varias partes. ¿Puede alguien explicarme brevemente por qué se usa y cuáles son sus ventajas?

Si lo uso, ¿por qué es mejor enviar fotos de esa manera?

    Una solicitud HTTP multipart es una solicitud HTTP que los clientes HTTP construyen para enviar archivos y datos a un servidor HTTP. Es comúnmente utilizado por navegadores y clientes HTTP para cargar archivos en el servidor.

    • Lo que parece
    • Ver contenido de tipo multiparte
    • Ver multipart / form-data

    Como dice la especificación oficial ( https://www.w3.org/Protocols/rfc1341/7_2_Multipart.html ), ” uno o más conjuntos diferentes de datos se combinan en un solo cuerpo “. Entonces, cuando las fotos y la música se manejan como mensajes multiparte como se menciona en la pregunta, probablemente haya algunos metadatos de texto sin formato asociados, lo que hace que la solicitud contenga diferentes tipos de datos (binarios, de texto), lo que implica el uso de varias partes.