Apache et le multipart/form-data [Résolu]

nihonsx5 20 Messages postés samedi 21 décembre 2002Date d'inscription 16 février 2014 Dernière intervention - 23 août 2005 à 18:20 - Dernière réponse : nihonsx5 20 Messages postés samedi 21 décembre 2002Date d'inscription 16 février 2014 Dernière intervention
- 4 sept. 2005 à 15:00
Bonjour,

je travaille sur VB.NET et je dois faire un "POST" de données sur une page PHP (serveur APACHE).

Je dois le faire avec un content-type multipart/form-data.



Dim boundary As String = "-------------------------------------------------------------ZkdOkkdKjoHEEdZ"

Dim Essai As String

Essai = Essai & boundary & vbCrLf

Essai = Essai &
"Content-Disposition: form-data; name=""subject""" & vbCrLf &
vbCrLf

Essai = Essai & "TEST" & vbCrLf & boundary & vbCrLf

.

.

.

Essai = Essai &
"Content-Disposition: form-data; name=""seqnum""" & vbCrLf &
vbCrLf

Essai = Essai & "0"
& vbCrLf & boundary & "--" & vbCrLf & vbCrLf



Dim UrlTim As String = "http://www.exemple.com"

Dim myrequest As HttpWebRequest = WebRequest.Create(UrlTim)

myrequest.CookieContainer = New CookieContainer

myrequest.CookieContainer.Add(myResponse4.Cookies)

myrequest.Method = "POST"

myrequest.KeepAlive = True

myrequest.Referer = "http://bouboule.com"



myrequest.ContentType =
"multipart/form-data;
boundary=-----------------------------------------------------------ZkdOkkdKjoHEEdZ"

myrequest.ContentLength = Essai.Length



Dim oS2 As Stream = myrequest.GetRequestStream()

Dim oSWriter2 As
StreamWriter = New StreamWriter(oS2, Encoding.GetEncoding("ISO-8859-1"))

oSWriter2.Write(Essai)

oSWriter2.Flush()

oSWriter2.Close()



Bref, cela ne fonctionne pas. J'ai vu sur le net qu'il fallait rajouter deux "-" à la fin des datas après le boundary pour

un serveur APACHE. J'ai modifié le boundary (moins de "-"), rien n'y fait. Dans myrequest.ContentType,

j'ai rajouté deux "

> [....] "multipart/form-data; ""boundary= [...] Z"" Aucun résultat.



Je cherche, et je ne trouve pas. Si vous avez des idées, je suis tout ouïe.
Afficher la suite 

4 réponses

Meilleure réponse
nihonsx5 20 Messages postés samedi 21 décembre 2002Date d'inscription 16 février 2014 Dernière intervention - 4 sept. 2005 à 15:00
3
Merci
j'ai trouvé la solution, c'était un problème de cookies mal enregistrés de ma part.

Mon multipart était bon.

Merci pour les réponses.

Merci nihonsx5 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

ShareVB 2717 Messages postés vendredi 28 juin 2002Date d'inscription 13 janvier 2016 Dernière intervention - 27 août 2005 à 16:08
0
Merci
salut,



après le boundary=, tu mets par exe : =_azerty



ensuite chaque boundary se compose : vbcrlf & "--=_azerty" et pour
finir la liste de bornes vbcrlf & "--=_azerty--" & vbcrlf...le
vbcrlf avant la borne fait partie de la borne...

ShareVB
nihonsx5 20 Messages postés samedi 21 décembre 2002Date d'inscription 16 février 2014 Dernière intervention - 29 août 2005 à 12:40
0
Merci
Ce n'est pas ce que je fais ?

Le multipart devrait avoir cette forme là.



-------------------------------------------------------------ZkdOkkdKjoHEEdZ

Content-Disposition: form-data; name="subject""



TEST

-------------------------------------------------------------ZkdOkkdKjoHEEdZ


Content-Disposition: form-data; name="posteur"



Babar

-------------------------------------------------------------ZkdOkkdKjoHEEdZ--



Je rajoute bien les 2 "-" à mon boudary, et les 2 "-" pour la fin du multipart, à la fin du boudary.

Je me trompe peut-être. Mais j'ai regardé les trames sortant de mon navigateur, et le multipart a cette forme.

Tu as réussi à faire un post de données sur un serveur Apache ?



Merci pour la réponse
ShareVB 2717 Messages postés vendredi 28 juin 2002Date d'inscription 13 janvier 2016 Dernière intervention - 30 août 2005 à 09:49
0
Merci
salut,



non, moi c'était avec les Mails MIME....J'ai lu par ailleurs que
certains serveurs refusent les données s'il n'y a pas de
content-type....

ShareVB

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.