Foros del Web » Administración de Sistemas » Seguridad y redes »

Indicación de fin de documento en comunicación HTTP

Estas en el tema de Indicación de fin de documento en comunicación HTTP en el foro de Seguridad y redes en Foros del Web. ¡Hola! Estoy haciendo un cliente HTTP y me ha surgido un problema. Tras enviar la petición del recurso al servidor (GET / HTTP/1.1), el servidor ...
  #1 (permalink)  
Antiguo 14/04/2011, 03:54
 
Fecha de Ingreso: agosto-2010
Mensajes: 56
Antigüedad: 13 años, 8 meses
Puntos: 0
Indicación de fin de documento en comunicación HTTP

¡Hola!

Estoy haciendo un cliente HTTP y me ha surgido un problema. Tras enviar la petición del recurso al servidor (GET / HTTP/1.1), el servidor me responde, pero lo hace en varias partes, es decir, si el resultado que tiene que devolverme es grande lo hace en varios envíos (según me ha parecido comprobar no superan los 4 KB), entonces yo dejo la recepción de mensajes en bucle y voy concatenando lo que llega, pero, ¿cómo compruebo qué parte es la última? Es decir, ¿hay alguna especificación de HTTP que diga cómo indicar el final de un documento? Algún carácter especial o algo por el estilo... Porque no sé qué condición evaluar para salir del bucle, y como es obvio se queda dando vueltas infinitamente.

No sería buena idea esperar al </html>, ¿no? Porque puede haber scripts debajo...

¡Gracias!
  #2 (permalink)  
Antiguo 14/04/2011, 11:04
 
Fecha de Ingreso: febrero-2011
Mensajes: 581
Antigüedad: 13 años, 2 meses
Puntos: 81
Respuesta: Indicación de fin de documento en comunicación HTTP

En teoría, un </HTML> cierra el documento (salvo que sea XML y quieras soportarlo tambien).

Lo que deberías es, en todo caso, tener un "time-out"... SI llevas demasiado tiempo sin recibir "texto" del servidor y sin que te llegue el </html> puede ser una página mal construida. Generalmente en ese caso los navegadores cierran la petición como si hubiese llegado el fin de documento.

Al menos así lo haría yo... Si quieres hacer algo más complejo que un interprete de HTML, tendrás que programar compatibilidad para todos los estándares actuales (incluyendo xml, ¿html5?, etc)... Supongo que no querrás llegar tan lejos...
  #3 (permalink)  
Antiguo 14/04/2011, 11:45
 
Fecha de Ingreso: agosto-2010
Mensajes: 56
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Indicación de fin de documento en comunicación HTTP

Cita:
Iniciado por moeb Ver Mensaje
En teoría, un </HTML> cierra el documento (salvo que sea XML y quieras soportarlo tambien).

Lo que deberías es, en todo caso, tener un "time-out"... SI llevas demasiado tiempo sin recibir "texto" del servidor y sin que te llegue el </html> puede ser una página mal construida. Generalmente en ese caso los navegadores cierran la petición como si hubiese llegado el fin de documento.

Al menos así lo haría yo... Si quieres hacer algo más complejo que un interprete de HTML, tendrás que programar compatibilidad para todos los estándares actuales (incluyendo xml, ¿html5?, etc)... Supongo que no querrás llegar tan lejos...
Gracias, al final lo que he hecho es utilizar los objetos HttpWebRequest y HttpWebResponse de C#, que no sé internamente cómo pero trabajan bastante bien xD

PD: no, ni mucho menos pretendía llegar tan lejos jaja

¡Un saludo!

Etiquetas: cliente, documento, peticion, servidor, find, https
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:32.