2010-11-12 39 views
1

J'ai essayé dans mon ubuntu client telnet:Le '0' dans la réponse GET. Qu'est-ce que ça veut dire?

> telnet www.google.com 80 
> GET/HTTP/1.1 

Ce que je suis de retour est un groupe de lignes HTML dans la console. J'ai remarqué une chose à la fin de la dernière ligne, juste après la fermeture du tag/script. Il y a un caractère '0' ... qu'est-ce que cela signifie?

Répondre

0

Fin du fichier, EOF.

5

Au début de la réponse que vous verrez:

Transfer-Encoding: chunked 

1000 

HTTP chunked transfer encoding signifie que le serveur ne sait pas à l'avance la taille de la Content-Length de la réponse va être, donc il va donner vous un peu à la fois. Ce type de réponse est typique pour les scripts côté serveur, lorsque le serveur Web souhaite commencer à renvoyer les résultats du script à l'utilisateur avant que le script ne soit complètement terminé.

Donc le 1000 est un signe qu'il y a un bloc de 4096 (0x1000) octets à suivre: <!doctype html><html><head><meta.... Après 1000 octets, vous obtenez un autre en-tête de bloc indiquant (dans ma demande) f65, ce qui signifie 3941 octets de plus. Après cela, cc0 (3264 octets de plus) et enfin 0 qui est un signal que la réponse est complète.