Recuperezr seulement le body/content d'une requete HTTP (sockets c++)

maxoudu328 Messages postés 52 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 17 mai 2007 - 17 mai 2007 à 04:58
maxoudu328 Messages postés 52 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 17 mai 2007 - 17 mai 2007 à 15:41
Bonsoir,

Aprés plusieurs heurs de recherche je n'ai toujours pas trouver de reponse a mon probleme, je m'en remet donc a vous.

Donc voila, je voulais recupperé le contenue d'une page web de mon site, j'ai donc utiliser les socket et fait un GET de cette maniere (GET %s%s HTTP/1.1\r\nHost: %s\r\nAccept: */*\r\n\r\n - je pense que vous comprendrez quel est le contenue de mes variables) je recois donc parfaitement la reponse sous la forme d'un header et d'un body :

e.g
HTTP/1.1 200 OK

Date: Thu, 17 May 2007 02:32:58 GMT

Server: Apache/2.2.4 (Win32) PHP/5.2.1

X-Powered-By: PHP/5.2.1

Content-Length: 28

Content-Type: text/html

CONNECTION ACCEPTED FOR Craz

La reponse est pour le moment un phrase de teste seulement, j'aimerai au final recuperé un code d'identification mais le gros probleme ce situe au niveau du heard, oui, il m'ai completement inutile (excepté pour les testes) j'ai pensé aux regex mais je trouve ca un peu lourd pour ce genre de fonction et je trouve quand meme bizard de n'avoir rien lue de pertinent a ce sujet.

Donc pour résumer, j'aimerait ne recevoir comme reponse seulement le BODY de ma page ou du moins pouvoir le formatté avant de l'utiliser :) (a tout hazard, j'utilise CODE::BLOCK & GCC)

Merci d'avance.

3 réponses

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
17 mai 2007 à 06:13
Salut,

La réponse http se finie par "\r\n\r\n" (une ligne vide, si on veut),
donc tu trouve la premiere occurence de cette suite de 4 octets dans
tout ce que le serveur te renvoie, et tu gardes que ce qui suit.
0
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
17 mai 2007 à 11:51
Rechercher "ParseHeaderHttp" la fonction retourne le content-length indiqué dans le header.
0
maxoudu328 Messages postés 52 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 17 mai 2007
17 mai 2007 à 15:41
merci, cette pettite reponse et un strstr passe relativement bien :) quelques bugs encor mais ca devrait aller
0
Rejoignez-nous