begin process at 2012 05 30 15:23:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Réseau / Internet

 > 

requète http


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

requète http

dimanche 11 septembre 2005 à 14:33:04 | requète http

StevenJLMunn

Je travail sous Dev-C++ et je voudrais faire une requète http sous une console, pas de fenètres windows. Je connais les commandes sous Visual C++ mais je veux faire une requète par Dev-C++ puisqu'il est gratuit. Merci d'avance.

StevenJLMunn

dimanche 11 septembre 2005 à 16:33:19 | Re : requète http

vecchio56

Administrateur CodeS-SourceS
C'est le même principe sous VC++ et sous Dev-C++: tu utilises winsock dans les deux cas, et pour envoyer une requete tu utilises la fonction send
dimanche 11 septembre 2005 à 20:54:29 | Re : requète http

Alcantornet

Voilà un exemple qui fonctionne avec Dev-cpp:

#include <stdio.h>
#include <stdlib.h>
#include <winsock2.h>
#include <string.h>

SOCKET sock; // Socket Client

bool MakeClient(char * addr,unsigned short port){
    WSADATA WSAData;
    WSAStartup(MAKEWORD(2,0), &WSAData);
   
    SOCKADDR_IN sin;
    sock = socket(AF_INET, SOCK_STREAM, 0);

    /*remplacer l'ip par celle de la machine possédant le serveur*/
    sin.sin_addr.s_addr = inet_addr(addr); // IP du serveur
    sin.sin_family      = AF_INET;
    sin.sin_port        = htons(port);
   
    // Envoie d'une requete de connetion
    if(connect(sock, (SOCKADDR *)&sin, sizeof(sin))!=0){
        printf("Aucune Connection Trouvée\n");
        return 1;
    }else{
        printf("Connection Etablie\n");
        return 0;
    }   
}

void EndClient(){
    // Fermeture de la session TCP Correspondant à la commande connect()
    shutdown(sock,2); // 2 signifie socket d'émission et d'écoute
   
    // Fermeture de la socket correspondant à la commande socket()
    closesocket(sock);
   
    // Quitte proprement le winsock ouvert avec la commande WSAStartup
    WSACleanup(); // A appeler autant de fois qu'il a été ouvert.
}
      
int main()
{  
    char buffer[65535];
    memset(buffer,0,65535);
   
    // Connexion à www.google.com
    MakeClient("66.249.85.104",80);
   
    //Envoie une requete (à la place du / on peut mettre le nom d'une page ex: /index.php)
    send(sock,"GET / HTTP/1.0\n\r\n\r",93,0);
   
    // Reçoit les données
    recv(sock, buffer, sizeof(buffer), 0);

    // Affiche la réponse du serveur
    printf("%s",buffer);

    // Termine la connexion
    EndClient();
   
    system("pause");
}

N'oublie pas d'ajouter la librairie ws2_32
lundi 12 septembre 2005 à 10:07:56 | Re : requète http

DeAtHCrAsH

Alcantornet> WSAStartup ne doit etre initialisé qu'une seule fois au démarrage du programme, puis libérer une fois le programme terminé.

Sauf si tu en as besoin que dans une fonction locale. Dans ce cas la tu le charge et le libère dans ta fonction.

Avec ta méthode, si tu crées un serveur multiuser, tu peux etre sur que la deuxieme demande de connexion echouera.

Pour plus de sécurité il faut aussi que tu controles la valeur de WSAData.
Puis évite aussi d'appeller les variables par le type (WSADATA WSAData).

Sinon le code est bon.

Shell
lundi 12 septembre 2005 à 20:26:46 | Re : requète http

Alcantornet

Ok merci de tes conseilles




Cette discussion est classée dans : http, dev, requète


Répondre à ce message

Sujets en rapport avec ce message

Release sous Dev-C++ [ par victorcoasne ] Bonjour,Je compile sous Dev-c++ et on me dis que je fais nimporte quoi car j'inclu les info de debug avec donc j'aimerais savoir comment compiler sans Aide pour Dev-C++ [info] [ par victorcoasne ] Bonjour,J'ai fait un forum pour ceux qui ont des problèmes avec Dev-C++.N'hésitez pas à poser vos questions !Voici l'adresse http:/ Threads sous dev [ par victorcoasne ] Bonsoir, J'aimerais apprendre à manier (créer, modifier , utiliser, supprimer...) des threads sous dev-c++.Pas de truc en Anglais que du Français SVPM Need dico dev c++ [ par Seraf1 ] Salut a tous, je voulais savoir ou je pourrait trouver toutes les commandes utiles en C++ (pour le moment j'utilise DevC++ cours oblige mais je peux c message d'erreur :s (dev c++) [ par Seraf1 ] Bonjour bonjour, je suis nouveau en programation et lorsque je teste certains programmes du site, je me retrouve bloqué. En effet, lors de la compilat Paquets wxWidgets 2.5.2 pour Dev-Cpp [ par fredcl ] Pour ceux que cela interresse.Voici des devPak pour Dev-Cpp du Framework wxWidgetsIls sont fait avec la version 2.5.2 CVS du 12/09/2004http://cfred.fr stocker un bitmap dans l'exe avec Dev-Cpp [ par Mastersam ] Bonjour je voudrais charger une image bitmap qui serait stockée dans l'exe même. Mais je ne sais pas comment définir cette ressource. Je travaille ave dev C++ sous linux (debian) [ par izle ] Bonjour,Je developpe une API windows, j'aimerais faire la meme chose mais pour linux (debian), existe-t-il une version de dev C++ sous linux, si oui o Fond invisible [ par victorcoasne ] Comment rendre le fond d'un statique invisible ?Vous voulez des RPG gratuits allez sur http://jeux.jscv.com !!!Le créateur du site htt Couleur hexa [ par victorcoasne ] Bonjour,Comment convertir une couleur RVG en hexa ?Merci,Vous voulez des RPG gratuits allez sur http://jeux.jscv.com !!!Le créateur du site <a href='h


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,418 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales