Envoi d'un TidHttp.POST

Résolu
grandyaka54 Messages postés 97 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 18 décembre 2013 - 8 janv. 2009 à 10:30
grandyaka54 Messages postés 97 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 18 décembre 2013 - 9 janv. 2009 à 08:48
Bonjour,

Je suis en train de développer un petit Client/Serveur en Http.
Lors de l'envoi, le serveur reçoit le chemin du fichier et non le contenu... Le but est bien d'envoyer le contenu du fichier. Mais je n'y arrive pas.
Merci de me donner des pistes....    

ClientHttp => Nom de mon composant TidHttp, Composant Indy10

Bout de code :
--------------

var
    Source  : TStringsStream;
    Reponse : TMemoryStream;
begin
  [...]
 
  //Ouverture de mon fichier en lecture
  Source := TStringStream.Create(CheminFichierOrigine,fmOpenRead);

  //Envoi requête au serveur http avec dans source le contenu du fichier
  ClientHttp.Post('htpp://adresseIP', Source, Reponse);
 
  [...]
end;    

Merci ;-)...

1 réponse

grandyaka54 Messages postés 97 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 18 décembre 2013 5
9 janv. 2009 à 08:48
Bon, un bon début, j'arrive maintenant à bien envoyer mes informations. En faite, je lui envois un document xml...

Bout de code :
---------------

var
  XmlReponse : TStringStream; 
  XmlDemande : TStringList;
  adrUrl     : String;
begin

  adrUrl := 'http://' + adrServeur;

  with frmMain.ConnectHttp do
  begin

    //Creation de la TStringList
    XmlDemande := TStringList.Create();
    try//1
      //Chargement du fichier Xml dans XmlDemande
      XmlDemande.Add('Ici mon document XML');

      //Creation du fichier XmlReponse
      XmlReponse := TStringStream.Create();
      try//2

        //Propriétés HTTP
        ProtocolVersion := pv1_1;
        IOHandler.Host := adrUrl;
        IOHandler.Port := 80; 

        //Envoi du POST
        Post(adrUrl,XmlDemande,XmlReponse);

        //Traitement de la réponse
       [...]

      finally
        XmlReponse.Free;
      end;//2

    finally
      XmlDemande.Free;
    end;//1

  end;//with

Voilou !
3
Rejoignez-nous