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

Langage PHP Discussion :

Pb socket PHP


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Par défaut Pb socket PHP
    salut,

    voici mon pb :
    je fais une connexion socket à un serveur X
    je récupère bien l'entête (header HTTP/1.1 200 OK etc etc) par contre pour le body j'ai plus de mal. Parfois selon le serveur avec lequel je fais la connexion je n'arrive pas à le récupérer.

    voilà ce que j'envois à la base (si le pb viens de là?...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    	fputs($sock, "$method $path HTTP/1.0\r\n");
    	fputs($sock, "Host: $host\r\n");
    	fputs($sock, "Content-type: application/x-www-form-urlencoded\r\n");
    	fputs($sock, "Content-length: " . strlen($data) . "\r\n");
    	fputs($sock, "Accept: */*\r\n");
    	fputs($sock, "\r\n");
    	fputs($sock, "$data\r\n");
    	fputs($sock, "\r\n");
    si quelqu'un a une idée ...

  2. #2
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Pour ma part j'envoie tous les header en une séquence.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    		/* Envoi du HEADER HTTP  */
    		if( !fputs($this->Socket , $Header->__tostring()) )
    		{
    			fclose($this->Socket);
    			throw new Exception ( "Impossible d'ennvoyer le HEADER HTTP !" );
    		}
    Sinon le header semble correct...

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Par défaut
    salut epox. merci de ta réponse.
    oui bonne idée, je vais essayer ta méthode... peut-être que certains serveurs la supportent mieux...
    je pensais aussi que ce pouvait être un problème de protocole (http 1.0 OU http 1.1 ?) ou encore d'ordre des éléments qui étaient envoyés dans le header...
    à part le tuto ici sur développez.com est-ce que quelqu'un aurait des liens sympas ?

  4. #4
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Ben pour la version du protocol, j'imagine que dans les recommandations de la rfc les serveurs comprenant le 1.1 doivent rester compatible avec des entete 1.0.

    Sa me parait normal, question de compatibilité, mais je n'en ai pas la confirmation :/

    Pour les autres éléments à un moment j'ai pensé qu'en rajoutant le User-agent sa pourrait p e solutionner le problème, mais ce n'est qu'une idée comme sa :/

    Sinon pour les liens je me souvient pas en avoir vu beaucoup qd j'ai fait ma version :/

Discussions similaires

  1. [FLASH MX2004] [XMLSocket] Problème avec serveur socket php
    Par cocodunombril dans le forum Flash
    Réponses: 4
    Dernier message: 03/04/2009, 02h10
  2. Comment définir un timeout sur une socket PHP ?
    Par N3odyme dans le forum Langage
    Réponses: 7
    Dernier message: 07/05/2006, 23h04
  3. [Tableaux] Envoyer de l'hexa via une socket PHP
    Par N3odyme dans le forum Langage
    Réponses: 2
    Dernier message: 06/05/2006, 19h34
  4. [Système] Probleme Socket Php
    Par Reaggaman dans le forum Langage
    Réponses: 4
    Dernier message: 01/03/2006, 18h55
  5. [sockets]Comment intéragir avec une socket php ?
    Par le Daoud dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 31/10/2005, 10h50

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