2012-05-23 16 views
6

Por lo que yo sé, es posible transferir archivos binarios a través del protocolo HTTP. Pero HTTP es un protocolo basado en texto, la trama de respuesta HTTP típica se ve de la siguiente manera:Transferencia de archivos a través de HTTP

HTTP/1.1 200 OK 
Date: Wed, 23 May 2012 22:38:34 GMT 
Content-Length: 438 
Content-Type: text/html; charset=UTF-8 

Here goes content 

Si es así, ¿cómo debe ser codificada archivo binario en este marco? ¿Qué es el tipo de contenido? ¿El contenido está codificado con base64, lo mismo que los archivos adjuntos en el protocolo POP3? O son datos brutos (¿es posible no causar problemas si es así?)

Respuesta

9

Los campos de encabezado están basados ​​en texto, pero la carga real es binaria. Puedes transferir lo que quieras.

Y no, no tiene nada que ver con el tipo de contenido. Esa es solo una etiqueta para que el destinatario sepa cómo procesar los datos; no afecta el formato en el protocolo mismo.

0

Los archivos binarios generalmente se transfieren con el tipo de aplicación/secuencia de octetos (a menos que coincidan con otro tipo mimet más específico). Para la transmisión, utiliza los datos sin procesar, no se necesita base64.

+0

pero esto es un protocolo basado en texto, ¿qué pasa con la codificación de caracteres de nueva línea y el orden de los bytes? –

Cuestiones relacionadas