Envoyer un fichier xml avec requete http post

IslandMan974 Messages postés 104 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 27 juin 2007 - 19 févr. 2007 à 17:42
LloydKent Messages postés 2 Date d'inscription mardi 2 septembre 2008 Statut Membre Dernière intervention 23 septembre 2008 - 23 sept. 2008 à 14:14
bonjour,

Voila je voudrais savoir comment envoyer un fichier xml en utilisant une methode http post.
Je desire realiser une Form avec un input file pour que l'utilisateur puisse choisir son fichier a envoyer.
Une fois la selection faite ,je voudrais l'envoyer le fichier sur un autre serveur en utilisant la metode post .
Sur le serveur qui recoit le fichier xml se trouve une application utilisant DOM afin de pouvoir exploiter le fichier xml et traiter les donnes recues.
 
Apres quelques recherches sur le net j'ai  lu qu'avec les requetes http c'etais realisable  ,mais j'ai deux problemes.

Voici le code de la page utilisateur 
<html
xmlns="http://www.w3.org/1999/xhtml"
>
<head
runat="server">
<title>Page sans titre
</title>
</head>
<body>
<form
id="form1"
runat="server"
enctype="multipart/form-data"
action="http://www.MonAurtreServeur/mapagelistener.aspx"
method="post">
    <div>
           <input
type="hidden"
name="addfile"
value="1"/>
          <input
type="file"
name="filename"/>
          <input
type="submit"
value="Add"/>
    </div>
</form>
</body>
</html>

Mon probleme c'est comment recuper se fichier sur l' autre serveur afin de le traiter automatiquement.Je veux dire je veux pouvoir le lire ,ecrire modifier le xml.

3 réponses

docv266 Messages postés 19 Date d'inscription mardi 14 mars 2006 Statut Membre Dernière intervention 10 juillet 2021
12 mars 2007 à 13:57
Quand tu envoies un fichier en POST ton client envoie plein d'infos à ton serveur,
 du genre :

Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.10) Gecko/20070216 Firefox/1.5.0.10
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Content-Type: multipart/form-data; boundary=---------------------------826073346213

Content-Length: 194

-----------------------------826073346213
Content-Disposition: form-data; name="fichier"; filename="texte.txt"
Content-Type: text/plain
 
"le contenu de ton texte"
-----------------------------826073346213--

A toi ensuite de traiter tout le truc.
0
LloydKent Messages postés 2 Date d'inscription mardi 2 septembre 2008 Statut Membre Dernière intervention 23 septembre 2008
2 sept. 2008 à 11:07
Bonjour,

Voici quelques jours que j'essaie également de recevoir un fichier par http POST. J'utilise php (mais je me dis que la réponse est peut-être identique ici!?) et je me demande si je peux "simplement" parser la variable globale $_POST pour récupérer mon fichier!?

Parce que toutes ces infos (Host, User-Agent, etc.) sont reçues par les serveur, elles ne sont pas dans la variable, je me trompe?

Merci infiniement pour votre (peut-être) aide!
0
LloydKent Messages postés 2 Date d'inscription mardi 2 septembre 2008 Statut Membre Dernière intervention 23 septembre 2008
23 sept. 2008 à 14:14
Bonjour,

Si jamais, j'ai trouvé la solution pour récupérer des données envoyées par http POST.

Il faut juste récupérer la valeur brute de POST en faisant comme ça:
$var = file_get_contents('php://input');

Ensuite, libre à chacun de faire ce qu'il veut de ces données!

A bientôt!
0
Rejoignez-nous