sock = socket(AF_INET, SOCK_STREAM, 0);
sock = socket(PF_INET, SOCK_STREAM, 0); // PF pour protocol family
if (connect(sock, (SOCKADDR*)&sin, sizeof(sin)) == -1) perror("Erreur connexion");
GET /groups/jeux_sponso HTTP/1.1 Host: habbo.fr Connection: keep-alive User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 Cookie: __qca=P0-199355260-1323624564989; __utma=151556768.1622191701.1323624565.1323796545.1323800914.6; __utmz=151556768.1323624565.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none) Accept-Encoding: gzip;q=1.0, deflate;q=0.8, chunked;q=0.6
GET /groups/jeux_sponso HTTP/1.1 Host: www.habbo.fr Connection: keep-alive User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 Cookie: __qca=P0-199355260-1323624564989; __utma=151556768.1622191701.1323624565.1323796545.1323800914.6; __utmz=151556768.1323624565.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none) Accept-Encoding: gzip;q=1.0, deflate;q=0.8, chunked;q=0.6 GET /myhabbo/styles/assets/other.css?v=e4d38323acb5a8182efc2f78d45f6fa4 HTTP/1.1 Host: www.habbo.fr Connection: keep-alive User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2 Accept: text/css,*/*;q=0.1 Referer: http://www.habbo.fr/groups/jeux_sponso Accept-Encoding: gzip,deflate,sdch Accept-Language: fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 Cookie: __qca=P0-199355260-1323624564989; __utma=151556768.1622191701.1323624565.1323796545.1323800914.6; __utmz=151556768.1323624565.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); SLID=132380598211935403.0 If-Modified-Since: Tue, 13 Dec 2011 18:43:40 GMT
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionSOCKET Connection_TCP_INET(char *serveur, short port) { SOCKET sock=-1; struct sockaddr_in ServAddr; struct hostent *he; // initialise ws2_32.dll sur windoze WSADATA wsa; if (WSAStartup(0x0202, &wsa) != 0) { printf("erreur WSAStartup()"); return -1; } //printf("gethostbyname(%s)\n", serveur); if ((he gethostbyname(serveur)) NULL) { printf("err Gethostbyname()"); return -2; } //printf("Socket\n"); if ((sock socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) INVALID_SOCKET) { printf("err socket()\n"); return -3; } //printf("fill address\n"); ServAddr.sin_family = AF_INET; ServAddr.sin_port = htons(port); ServAddr.sin_addr = *((struct in_addr *)he->h_addr); //printf("connect()\n"); if (connect(sock, (struct sockaddr *)&ServAddr, sizeof(ServAddr))==-1) { printf("err connect()"); closesocket(sock); return -4; } //printf("Connected\n"); return sock; }
SOCKET sk = Connection_TCP_INET(char *serveur, short port); if (!sk) return 1; //et hop là tu es connecté // envoie la requete HTTP ... int i; if ((i send(sk, req, strlen(req), 0)) -1) { printf ("erreur send()"); return -1; } // ... et reçoit la sauce char buf[512]; int total = 0; while (i = recv(sk, buf, sizeof(buf), 0)) { buf[i]=0; printf("%s\n", buf); total += i; } if (close(sk)==-1) { printf ("erreur close()"); return -1; } printf("Socket fermé (%d octets recus).\n", total);
FILE *fp = fopen("recv.txt", "wb"); while (i = recv(sk, buf, sizeof(buf), 0) ) { buf[i]=0; //printf("%s\n", buf); fwrite (buf, 1, i, fp); } fclose(fp);