IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau C Discussion :

Client / Serveur TCP/IP


Sujet :

Réseau C

  1. #21
    Membre éclairé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    509
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Août 2007
    Messages : 509
    Par défaut
    Citation Envoyé par KaNDeL Voir le message
    non je fais un serveur normal qui traite les différentes requetes et principalement GET et HEAD. c'est juste que le serveur ne se connecte pas à internet mais va chercher le contenu de pages stockées sur l'ordinateur. je sais pas si mon explication est bcp plus claire.merci d'avance pour vos reponses
    Conseil ; commence par bien gérer la requete GET coté serveur et après tu t'occuperas des autres commandes.
    En gros, ce qu'il faut faire coté serveur :

    1*) Initialiser la connexion (tu l'as déjà fait)
    2*) Mettre en attente de client avec la fonction accept (faire un man accept)
    3*) Lorsqu'un client arrive, crée un thread qui s'occupera de gérer les requetes entre le client et le serveur (par exemple, pthread_create avec comme argument la socket du client en param. Faire un man pthread_create)
    4*)Si ta requete est un GET, (par exemple GET <chemin> HTTP/<version>, version peut 1.0 ou 1.1), tu récupères le chemin du fichier
    5*) Si le fichier existe, tu envoies au client

    a) "HTTP1/<version> 200 OK"
    b) le Content-Type (c'est a dire type de contenu). Ce sera text/html si un fichier html
    c) Le content-Length : la taille de ton contenu, en l'occurrence la taille du fichier
    d) une ligne blanche
    e) Le contenu du fichier. Tant que t'as pas atteint la fin du fichier, tu balances son contenu sur la socket.
    6*) Si le fichier n'existe pas, tu envoies :
    a) "HTTP 404 NOT FOUND"
    7*) Si la req est mal formée, "HTTP 400 BAD REQUEST"

    Voila un serveur http minimal gérant uniquement la cmt GET.
    Une fois, bien implémentée, tu peux t'attaquer à la cmd head, ou post, etc (ca va chauffer pr toi)

    Pour tester, utilises ton client telnet et tu lui envoies la cmd GET.

    Dernière chose, gère bien les fins de connexion

  2. #22
    Membre averti
    Inscrit en
    Septembre 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 48
    Par défaut
    et comment faire pour traiter les images ?

  3. #23
    Membre éclairé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    509
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Août 2007
    Messages : 509
    Par défaut
    Citation Envoyé par KaNDeL Voir le message
    et comment faire pour traiter les images ?
    Il faut voir ce que dit la RFC sur les types MIME. A mon avis (c'est mon avis mais faut regarder ce que dit la RFC la dessus), éTANt donné qu'1 image est un fichier binaire, tu procèdes de la meme facon qu'1 fichier normal sauf que tu renvoies Content-Type: image/<type> avec type=jpeg, jpg, png et ausssi la taille du fichier : Content-Length

Discussions similaires

  1. Aide Client/Serveur TCP //Commentaire
    Par sebounty dans le forum Réseau
    Réponses: 1
    Dernier message: 27/04/2007, 09h19
  2. [Reseau] probleme client/serveur TCP LInux
    Par jmjmjm dans le forum Réseau
    Réponses: 20
    Dernier message: 03/12/2006, 19h32
  3. [C#] Problème client-serveur TCP
    Par LE NEINDRE dans le forum Windows Forms
    Réponses: 7
    Dernier message: 02/06/2006, 16h23
  4. Réponses: 1
    Dernier message: 11/05/2006, 11h46
  5. client/serveur tcp/ip en c sous unix
    Par oclone dans le forum Développement
    Réponses: 8
    Dernier message: 19/04/2005, 18h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo