Expédier un fichier via la méthode POST
Utilisateur WDF
Inscrit:
29/01/2006 17:03
Post(s): 78
Bonjour, à tous,

Je désire expédier un fichier via la méthode POST sur un site internet.

À l'aide de diverses informations glanées sur des forums et après analyse de l'échange récupéré par un Sniffer, j'ai constitué le code suivant :

nIdFichier est un entier = fOuvre(SC_SelecteurFichier.SAI_FIC)

sContenuFichier est une chaîne = fLit(nIdFichier,fTaille(SC_SelecteurFichier.SAI_FIC))

fFerme(nIdFichier)

bound est une chaîne = "-----------------------------7d7d7c1f4s298d41gha09b2"
TypeMessage est une chaîne = "multipart/form-data; boundary=" + bound

sMessText1 est une chaîne

sMessText1 = "--" + bound + RC + ...
"Content-Disposition: form-data; name=""masque""" + RC + RC + "Y" + RC + "--" + bound + RC + ...
"Content-Disposition: form-data; name=""dest""" + RC + RC + SAI_NumDestinataire + RC + "--" + bound + RC + ...
"Content-Disposition: form-data; name=""cap""" + RC + RC + SAI_Code_Controle + RC + "--" + bound + RC + ...
"Content-Disposition: form-data; name=""uploaded_file""; filename=""" + SC_SelecteurFichier.SAI_FIC + """" + RC + "Content-Type: application/pdf" + RC + RC

sMessText2 est une chaîne = "--" + bound + RC +...
"Content-Disposition: form-data; name=""id""" + RC + RC + gsMonID + RC + "--" + bound + RC +...
"Content-Disposition: form-data; name=""idt""" + RC + RC + gsMonIDT + RC + "--" + bound

sMessagePost est une chaîne = sMessText1 + sContenuFichier + sMessText2

ResExecution est une chaîne = HTTPRequête("http://www.site.fr/valid.pl?", "", "", sMessagePost, TypeMessage)


L'échange avec le serveur commence, mais après environ 50 secondes le programme récupère la main et visiblement le serveur ne sait pas exploiter le fichier.

Le HTTPDonneRésultat(HTTPEntête) retourne :

HTTP/1.1 200 OK<\r><\n>Date: Mon, 14 May 2007 12:34:16 GMT<\r><\n>Server: Apache<\r><\n>Connection: close<\r><\n>Transfer-Encoding: chunked<\r><\n>Content-Type: image/png<\r><\n>Content-Language: pl<\r><\n><\r>


Le HTTPDonneRésultat(HTTPRésultat) retourne :
‰PNG<\r><\n><\n>


Je ne sais plus trop où chercher pour le moment.

Par avance merci pour vos conseils.

Contribution le : 14/05/2007 14:40
Créer un fichier PDF de la contribution Imprimer


Re: Expédier un fichier via la méthode POST
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour,

Je pense qu'il serait préférable de passer par l'activeX WebBrowser afin de conserver l'idsession entre deux pages.

Contribution le : 14/05/2007 16:48
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: Expédier un fichier via la méthode POST
Animateur WDF
Inscrit:
19/01/2004 13:48
De www.sigmasys.fr
Post(s): 988
Bonjour,

Il faut peut être tout simplement mettre dans la variable à poster :

Par exemple (ou en remplacant les ; par & ) :

""masque""=Y;""dest""=" + SAI_NumDestinataire + ";""cap""=" + SAI_Code_Controle + ";""uploaded_file""=" + """ + SC_SelecteurFichier.SAI_FIC + "";"

Bon dév.,

Totof

Contribution le : 14/05/2007 16:49
_________________
[ Totof(Christophe LOGEL) réalise des développements spécifiques WinDev (Mon annonce wdforge), http://www.sigmasys.fr]
Créer un fichier PDF de la contribution Imprimer


Re: Expédier un fichier via la méthode POST
Utilisateur WDF
Inscrit:
29/01/2006 17:03
Post(s): 78
Merci pour vos réponses,

En effet il pourrait être préférable de conserver la session entre les pages, mais visiblement cela ne pose pas problème pour le reste du programme. Ce que je me demande c'est si la constitution de ma réponse au formulaire POST est correcte ?

Est-il nécessaire de procéder à un encodage particulier du fichier ?

Totof, ce n'est pas juste une réponse à un formulaire en méthode POST (ce qui correspond à la syntaxe que tu proposes) mais un envoie de fichier qui impose une mise en forme bien particulière que je ne maîtrise pas visiblement. :(

Contribution le : 14/05/2007 17:10
Créer un fichier PDF de la contribution Imprimer


Re: Expédier un fichier via la méthode POST
Utilisateur WDF
Inscrit:
29/01/2006 17:03
Post(s): 78
De plus le HTTPDonneRésultat(HTTPRésultat) devrait me retourner la page de confirmation de réception du fichier, pas le début du contenu du fichier.

Contribution le : 14/05/2007 18:14
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2