Classe client http multitache (maj 6)

Soyez le premier à donner votre avis sur cette source.

Vue 6 158 fois - Téléchargée 1 404 fois

Description

cette source contient 3 classes:

les classes sClient et sClientHTTP:
- sClient.h: classe de base, gere les sockets winsock, fonction de reception de donnees en multitache.
- sClientHTTP.h: herite des membres de sClient.h, fonction multitache surchargee: gere l entete HTTP et les donnees recues, gestion des codes HTTP de retour, gestion reception de fichiers, gestion des chunks (transfer-encoding: chunked)
Il est desormais necessaire d heriter cette classe afin de pouvoir l utiliser (ou de la changer afin de tout gerer a l interieur de celle-ci).

la classe sString.h:
classe gerant les chaines de caracteres (codee pour les besoins de sClientHTTP et pour ma propre comprehension, certaines choses manquent encore meme si elle commence a se completer de + en +, je la code au fur et a mesure de mes besoins pour la classe sClientHTTP, parfaitement fonctionnelle)
qques fonctions:
- mid(depart, longueur): permet de recupere une chaine commencant au caractere "depart" et de longueur "longueur"
- compare(chaine_a_comparer): permet de comparer deux chaines
- split(chaine, nbr, taille): separe une chaine autant de fois qu il est specifie par "nbr". Retourne un tableau des elements separes
- toInt(chaine): converti la chaine "chaine" en un entier.
Les operateurs suivants sont presents: +, +=, ==, !=, [], *, =
- hex2dec(chaine): converti une chaine hexadecimale en un entier (int)
- lTrim(chaine), rTrim(chaine) et trim(chaine): permettent d enlever les caracteres specifies dans "chaine" au debut et/ou a la fin de la chaine. Ex: a.lTrim(" \r\nd") enleve tous les caracteres specifies (" ", "\r", "\n" et "d") du debut de la chaine a (l ordre n a pas d importance, les caracteres sont pris un a un)

Source / Exemple :


// exemple fournit dans le zip.
// projet devcpp

// exemple de telechargement de fichier et gestion des chunks (transfer-encoding: chunked)

Conclusion :


Une autre modification majeure concernant la classe sClientHTTP: gestion des chunks (transfer-encoding: chunked)
La classe sString s enrichit de qques fonctions interessantes: hex2dec, rTrim, lTrim et trim.

Le projet s ouvre avec DevCPP (4.9.9.2 je pense... la derniere version dispo pour le moment)

une adresse utile contenant qques classes (strings, sockets, threads, gestion sll, ...):
http://www.bti.net/core_lib.php

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
224
Date d'inscription
samedi 26 juillet 2003
Statut
Membre
Dernière intervention
30 mars 2009

effectivement, je re-upload des que je peux.
Messages postés
1
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
25 mai 2007

Même problème que Rollinbe, je n'arrive pas à ouvrir le ZIP...
Messages postés
2
Date d'inscription
mardi 24 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2007

Impossible d'ouvrir le fichier pourtant j'ai la la derniere version de winrar voir message ci-dessous

! C:\Documents and Settings\Benjamin\Bureau\cppfrance_CLASSE-CLIENT-HTTP-MULTITACHE-MAJ_40904.zip: Méthode inconnue dans sClientHTTP\main.h
! C:\Documents and Settings\Benjamin\Bureau\cppfrance_CLASSE-CLIENT-HTTP-MULTITACHE-MAJ_40904.zip: Pas de fichier à extraire
Messages postés
224
Date d'inscription
samedi 26 juillet 2003
Statut
Membre
Dernière intervention
30 mars 2009

nouvelle version:
- sClientHTTP: gere les chunks (transfer-encoding: chunked), meilleure gestion des evenements (reponses HTTP, fin reception donnees, erreurs...)
- sString: ajout de qques fonctions: hex2dec, rTrim, lTrim et trim.
Messages postés
224
Date d'inscription
samedi 26 juillet 2003
Statut
Membre
Dernière intervention
30 mars 2009

nouvelle version dispo:
sClientHTTP: reception de fichiers et gestion de l entete HTTP
sString: plus d operateurs et fonction de conversion en un entier (nombre)

aucun bug connu.
Afficher les 12 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.