|
|
|
|
Très interressant comme projet.
As tu été voir la RFC, car c'est le genre de truc qui y sera indiqué. En plus, t'as du bol, il a été traduit ! http://www.salemioche.com/http/1945tm.php A+ ! Kalamit, La nuit, tous les chats sont gris. Pas les poulets ! :@) |
Oui la RFC donnera la réponse.
Pour résumer: la fin de l'entête HTTP est marquée par 2 retours à la ligne. (attention c'est pas forcément \r\n\r\n, ça peut très bien être \n\n seulement.) Histoire de ne pas réinventer la roue, pour un serveur web léger et compacts, il y a: sous Windows: TinyWeb (avec les sources en Delphi): http://www.ritlabs.com/tinyweb/ et pour les Unixs, micro_httpd (avec sources en C): http://www.acme.com/software/micro_httpd/ (150 lignes de code seulement ! :) |
Hi,
Pour un serveur Web léger (j'ai compilé sans problème sous FreeBSD et Linux) http://abyss.sourceforge.net/ Johan The software said "Requires Windows98, Win2000, or better, So I installed Unix. |
Merci à ceux qui ont répondu.
Concernant le http, je l'ai lu et j'ai vu qu'il fallait 2 retours à la ligne (CRLF) entre l'en-tête et le corps, mais rien pour la fin du corps. Si qqn savait m'indiquer la partie du rfc qui l'indique, ce serait bien aimable. Mad Ant |
(c'est marqué dans la RFC, mais bon...)
Soit la taille du corps est indiquée dans l'entête HTTP (Content-Length:), soit c'est à la fermeture de la connexion TCP qu'il faut considérer les données comme terminées. çà dépend des serveurs. |
Pour compléter:
La best-practice est d'indiquer la taille des données dans l'entête HTTP, mais dans la pratique ça peut devenir compliqué avec les envoi multipart. Tant que c'est possible, utiliser le content-length. C'est plus sûr, et c'est plus poli envers le client. |