Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

REQUETE HTTP GET / POST


Information sur la source

Catégorie :Réseau & Internet Source .NET ( DotNet ) Classé sous : requete, http, get, post, request Niveau : Débutant Date de création : 22/02/2006 Date de mise à jour : 19/07/2007 01:10:26 Vu : 30 689

Note :
9,5 / 10 - par 10 personnes
9,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (52)
Ajouter un commentaire et/ou une note


Description

Suite à une question dans le forum qui m'a poussé à ecrire un code que je pensais avoir déja poster ici, je me permet d'ajouter ce simple petit code.
J'avais effectivement deja poster la source "requete http via proxy, recuperer la source d'une page html" mais celle ci etait plus destiné à montrer l'interet du proxy et ne s'arretait que sur la methode GET, et le changement de nom serait devenu compliqué, bref, voila mon explication à une eventuelle critique concernant un doublon.
Cette fois ci les deux methodes les plus courantes (POST et GET) sont presentées.
Update : Gestion des authentification par .htaccess

Update 2 : Ajout de la gestion des cookies (pourtant indispensable, où était-elle??), ainsi que des proxy. Les arguments optionels attendus par les deux méthodes devienent nombreux, du fait que celles ci sont extraites d'une classe me simplifiant l'utilisations des requêtes HTTP, dans laquelle j'ai défini de nombreuses surcharges de ces méthodes.
J'hesite à mettre cette classe à la place des deux simple méthodes, ce qui augmenterais considérablement le code censé être très simple.
 

Source

  • Private Function Get_request(ByVal url As String, Optional ByVal cookies As String = "", Optional ByVal proxy As String = Nothing, Optional ByVal proxyport As Integer = Nothing, Optional ByVal timeout As Integer = 30000, Optional ByVal login As String = "", Optional ByVal pass As String = "") As String
  • Dim reader As IO.StreamReader 'on crée un objet streamreader
  • Try
  • Dim hwebrequest As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url) 'on crée la requete web
  • hwebrequest.Timeout = timeout
  • If proxy <> "" Then
  • Dim hproxy As WebProxy
  • hproxy = New WebProxy(proxy, proxyport)
  • WebRequest.DefaultWebProxy = hproxy
  • End If
  • If login <> "" Then
  • Dim hcredential As New System.Net.NetworkCredential(login, pass)
  • hwebrequest.Credentials = hcredential
  • End If
  • If cookies <> "" Then
  • hwebrequest.CookieContainer = New CookieContainer
  • hwebrequest.CookieContainer.SetCookies(New Uri(url.Substring(0, url.IndexOf("/", 8))), cookies)
  • End If
  • Dim hwebresponse As System.Net.HttpWebResponse = hwebrequest.GetResponse 'on crée un objet de reponse a notre requete
  • reader = New IO.StreamReader(hwebresponse.GetResponseStream) 'on redefini notre streamreader avec la reponse à la requete en argument
  • Dim res As String = ""
  • res = reader.ReadToEnd() 'on renvoie l'ensemble du resultat
  • reader.Close() 'on ferme l'objet
  • hwebresponse.Close()
  • Return res
  • Catch ex As Exception
  • Return ex.ToString
  • End Try
  • End Function
  • Private Function Post_request(ByVal url As String, ByVal data As String, Optional ByVal cookies As String = "", Optional ByVal proxy As String = Nothing, Optional ByVal proxyport As Integer = Nothing, Optional ByVal timeout As Integer = 30000, Optional ByVal login As String = "", Optional ByVal pass As String = "") As String
  • Dim reader As IO.StreamReader
  • Dim writer As IO.StreamWriter
  • Dim res As String = ""
  • Try
  • Dim hwebrequest As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url) ' on crée la requete web à partir de l'url
  • If proxy <> "" Then
  • Dim hproxy As WebProxy
  • hproxy = New WebProxy(proxy, proxyport)
  • WebRequest.DefaultWebProxy = hproxy
  • End If
  • If login <> "" Then
  • Dim hcredential As New System.Net.NetworkCredential(login, pass)
  • hwebrequest.Credentials = hcredential
  • End If
  • If cookies <> "" Then
  • hwebrequest.CookieContainer = New CookieContainer
  • hwebrequest.CookieContainer.SetCookies(New Uri(url.Substring(0, url.IndexOf("/", 8))), cookies)
  • End If
  • hwebrequest.Method = "POST" 'on defini la methode à utiliser
  • hwebrequest.ContentType = "application/x-www-form-urlencoded" 'on defini le type de contenu de la requete
  • hwebrequest.ContentLength = data.Length 'on defini la taille des données à envoyé
  • writer = New IO.StreamWriter(hwebrequest.GetRequestStream) 'on crée un objet streamwriter qui va nous permettre d'envoyer nos données
  • writer.Write(data) 'on ecrit les données
  • writer.Close() 'on ferme l'objet streamwriter
  • Dim hwebresponse As System.Net.HttpWebResponse = hwebrequest.GetResponse 'on crée un objet de reponse a notre requete
  • reader = New IO.StreamReader(hwebresponse.GetResponseStream) 'on redefini notre streamreader avec la reponse à la requete en argument
  • res = reader.ReadToEnd() 'on renvoie l'ensemble du resultat
  • reader.Close() 'on ferme l'objet
  • Return res
  • Catch ex As Exception
  • Return ex.Message.ToString
  • End Try
  • End Function
    Private Function Get_request(ByVal url As String, Optional ByVal cookies As String = "", Optional ByVal proxy As String = Nothing, Optional ByVal proxyport As Integer = Nothing, Optional ByVal timeout As Integer = 30000, Optional ByVal login As String = "", Optional ByVal pass As String = "") As String
        Dim reader As IO.StreamReader 'on crée un objet streamreader 
        Try
            Dim hwebrequest As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url) 'on crée la requete web 
            hwebrequest.Timeout = timeout
            If proxy <> "" Then
                Dim hproxy As WebProxy
                hproxy = New WebProxy(proxy, proxyport)
                WebRequest.DefaultWebProxy = hproxy
            End If
            If login <> "" Then
                Dim hcredential As New System.Net.NetworkCredential(login, pass)
                hwebrequest.Credentials = hcredential
            End If
            If cookies <> "" Then
                hwebrequest.CookieContainer = New CookieContainer
                hwebrequest.CookieContainer.SetCookies(New Uri(url.Substring(0, url.IndexOf("/", 8))), cookies)
            End If
            Dim hwebresponse As System.Net.HttpWebResponse = hwebrequest.GetResponse 'on crée un objet de reponse a notre requete 
            reader = New IO.StreamReader(hwebresponse.GetResponseStream) 'on redefini notre streamreader avec la reponse à la requete en argument 
            Dim res As String = ""
            res = reader.ReadToEnd() 'on renvoie l'ensemble du resultat 
            reader.Close() 'on ferme l'objet 
            hwebresponse.Close()
            Return res
        Catch ex As Exception
            Return ex.ToString
        End Try
    End Function

    Private Function Post_request(ByVal url As String, ByVal data As String, Optional ByVal cookies As String = "", Optional ByVal proxy As String = Nothing, Optional ByVal proxyport As Integer = Nothing, Optional ByVal timeout As Integer = 30000, Optional ByVal login As String = "", Optional ByVal pass As String = "") As String
        Dim reader As IO.StreamReader
        Dim writer As IO.StreamWriter
        Dim res As String = ""
        Try
            Dim hwebrequest As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url) ' on crée la requete web à partir de l'url
            If proxy <> "" Then
                Dim hproxy As WebProxy
                hproxy = New WebProxy(proxy, proxyport)
                WebRequest.DefaultWebProxy = hproxy
            End If
            If login <> "" Then
                Dim hcredential As New System.Net.NetworkCredential(login, pass)
                hwebrequest.Credentials = hcredential
            End If
            If cookies <> "" Then
                hwebrequest.CookieContainer = New CookieContainer
                hwebrequest.CookieContainer.SetCookies(New Uri(url.Substring(0, url.IndexOf("/", 8))), cookies)
            End If
            hwebrequest.Method = "POST" 'on defini la methode à utiliser
            hwebrequest.ContentType = "application/x-www-form-urlencoded" 'on defini le type de contenu de la requete
            hwebrequest.ContentLength = data.Length 'on defini la taille des données à envoyé
            writer = New IO.StreamWriter(hwebrequest.GetRequestStream) 'on crée un objet streamwriter qui va nous permettre d'envoyer nos données
            writer.Write(data) 'on ecrit les données
            writer.Close() 'on ferme l'objet streamwriter
            Dim hwebresponse As System.Net.HttpWebResponse = hwebrequest.GetResponse 'on crée un objet de reponse a notre requete 
            reader = New IO.StreamReader(hwebresponse.GetResponseStream) 'on redefini notre streamreader avec la reponse à la requete en argument 
            res = reader.ReadToEnd() 'on renvoie l'ensemble du resultat 
            reader.Close() 'on ferme l'objet 
            Return res
        Catch ex As Exception
            Return ex.Message.ToString
        End Try
    End Function

Conclusion

ammeliorations? 'suis preneur.
 

Historique

13 mars 2006 01:25:33 :
j'avais oublié d'enlever des arguments non utilisés dans la fonction get...
11 février 2007 16:38:11 :
Merci à NeverDie pour l'information concernant l'authentification, qui me semblait optionnel à l'epoque, mais qui m'est aujourd'hui indispensable pour mon projet professionel. ^^
19 juillet 2007 01:10:27 :
Ajout de la gestion des cookies, ainsi que des proxy.

Commentaires et avis

signaler à un administrateur
Commentaire de OneHacker le 23/02/2006 11:12:26

Ca a l'air impeccable, pas de problème !

Je te met 10/10 !
Bonne continuation !

Redman

signaler à un administrateur
Commentaire de Lucyberad le 12/03/2006 14:32:47

que dire de plus, c'est concis, complet, limpide:
si je vais dire 10/10 (au moins)

signaler à un administrateur
Commentaire de nquere le 21/03/2006 14:27:10

Effectivement c'est rès bien détaillé. Mais j'ai une erreur (pas de ton code, je te rassure il fonctionne très bien...)

Mon code est celui ci:
        Dim reader As IO.StreamReader
        Dim writer As IO.StreamWriter
        Try
            Dim hwebrequest As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url) ' on crée la requete web à partir de l'url

            hwebrequest.Method = "POST" 'on defini la methode à utiliser

            hwebrequest.ContentType = "multipart/form-data" 'on defini le type de contenu de la requete

            hwebrequest.ContentLength = Data.Length 'on defini la taille des données à envoyé

            writer = New IO.StreamWriter(hwebrequest.GetRequestStream) 'on crée un objet streamwriter qui va nous permettre d'envoyer nos données
            writer.Write(Data) 'on ecrit les données
            writer.Close() 'on ferme l'objet streamwriter

            Dim hwebresponse As System.Net.HttpWebResponse = hwebrequest.GetResponse 'on crée un objet de reponse a notre requete

            reader = New IO.StreamReader(hwebresponse.GetResponseStream) 'on redefini notre streamreader avec la reponse à la requete en argument

            txtResult.Text = reader.ReadToEnd() 'on renvoie l'ensemble du resultat
            reader.Close() 'on ferme l'objet
        Catch ex As Exception
            txtResult.Text = ex.Message.ToString
            writer.Close()
            reader.Close()
        End Try
Je génere une erreur lorsque je ferme le sw:
"La demande a été abandonnée : La demande a été annulée."

Est-ce à cause de mon Content-Type ? Je sais qu'il y a une histoire avec "boundary". A quoi ça sert et comment on s'en sert ? Merci...
Pour la petite histoire, le but est d'envoyer un fichier SavedVariables.lua sur un site pour mettre à jour un profil de joueur pour World Of Warcraft...

signaler à un administrateur
Commentaire de hvb le 21/03/2006 15:12:31

Tu fermes deux fois ton "writer" ....... vire le deuxieme "writer.Close()"

signaler à un administrateur
Commentaire de nquere le 21/03/2006 15:28:29

Uaip, mais c'était pas ça (le writer je l'avais mis pour un test que j'ai oublié de virer quand j'ai parser ici...)

En fait, il faut tout simplement une valeur "boudary" dans le content-type. "Boundary" sert en fait à délimité les données... C'est tout con mais j'ai chercher comme un taré :D

Merci ;)
@+

signaler à un administrateur
Commentaire de ptibuc le 26/05/2006 10:54:03

Source simple, claire, et qui marche parfaitement.

Merci beaucoup, très utile pour moi.

ps: je voudrais mettre un 10/10 mais on vote où ???

signaler à un administrateur
Commentaire de hvb le 26/05/2006 16:34:11

nquere : desolé de ne pas avoir repondu plus tot, je n'ai pas reçu de notification pour ton dernier commentaire, mais tu as resolu ton problème ^^

ptibuc : merci, pour voter c'est dans les liens en haut de la source dans "infomations sur la source", mais ne t'embete pas, un commentaire comme tu l'as fait est bien plus plaisant :)

signaler à un administrateur
Commentaire de OneHacker le 03/06/2006 21:53:58

HVB, grâce à toi j'ai fait un Aspirateur Web que je mettrai bientôt sur VBfrance.

Encore merci, bonne continuation !

Redman

signaler à un administrateur
Commentaire de NeverDie le 29/06/2006 16:26:17

Petit ajout. Il y a moyen de spécifié un utilisateur avant d'effectuer la requete pour être sûr d'avoir les droits.

Dim credential As New System.Net.NetworkCredential("User name","password")

hwebrequest.Credentials = credential

signaler à un administrateur
Commentaire de hvb le 28/07/2006 16:35:44

merci NeverDie pour l'ajout, je n'avais pas reçu l'email specifiant le nouveau commentaire. je ne peux pas mettre à jour aujourd'hui, et je pars en vacances demain, donc il faut esperer que les lecteurs jetteront un oeil aux commentaires en attendant ^^

signaler à un administrateur
Commentaire de PICOSOFT le 16/08/2006 11:39:37

Source claire et éfficasse pour moi,
a+

signaler à un administrateur
Commentaire de hvb le 11/02/2007 17:12:21

maj concernant le credential effectuée ^^

signaler à un administrateur
Commentaire de OneHacker le 19/02/2007 19:12:10

Ca sert  à quoi le credential en fait ? Là depuis l'idée de faire un Aspirateur avec ça j'ai l'ai améliroé et finalement je vais faire un moteur de recherche mais le seul problème c'est que sur VBFrance il y a aucun tuto clair ou source qui marche sur les expressions régulières ! Vous pouvez m'aider SVP ?

Cordialement

Redman

signaler à un administrateur
Commentaire de edertef le 28/03/2007 17:49:25

Merci pour ce codage, on dirais que c'est exactement ce qu'il me faillais !

Merci !

signaler à un administrateur
Commentaire de hvb le 28/03/2007 23:28:59

OneHacker : c'est pour s'authentifier sur les serveurs ou une securité de ce type est mise en place.
Edertef : de rien pour ce codage ^^

signaler à un administrateur
Commentaire de OneHacker le 08/04/2007 21:34:47

D'accord. PS : Je suis de retour pour une semaine.

signaler à un administrateur
Commentaire de hvb le 10/04/2007 10:21:47

lol!
PS : fais la pub de ta disponibilité autre part.

signaler à un administrateur
Commentaire de OneHacker le 10/04/2007 10:25:44

C'est pas le la pub. Et je suis là juste pour la semaine.

signaler à un administrateur
Commentaire de Kornebrume le 20/06/2007 11:37:05

Nikel le code.

Le login/mdp des fonctions get et Post servent-elles à s'identifier dans le cadre d'une boite mail par exemple?

Je souhaiterai m'identifier sur la page de config d'une SAGEM F@st 3302. Est-ce possible avec ce code?

Merci à vous pour vos réponses.

Korne

signaler à un administrateur
Commentaire de hvb le 20/06/2007 11:55:50

Non le couple login/pass ici permet de s'authentifier sur un systeme de type HTACCESS. (Quand tu as une petite boite de dialogue qui s'ouvre pour s'identifier).

Cependant, ce que tu cherches à faire est bien entendu réalisable. Il faudrait que tu sniffes les requetes envoyés à ta page de config sagem, pour voir quelles données sont transmises, puis que tu envoies celles ci via cette méthode.

signaler à un administrateur
Commentaire de Kornebrume le 20/06/2007 13:48:33

Et comment faire pour voir les requêtes/commandes qui sont envoyées à ma box?

Un logiciel particulier? Du matos à utiliser?

Merci à toi.

Korne

signaler à un administrateur
Commentaire de OneHacker le 20/06/2007 14:39:06

Comment on envoie une requete POST par contre ? car tu précises pas comment utiliser DATA si on doit faire quelque chose du genre "value1=a;value2=n" ou "value1>a," ect... nulle part c'est expliqué comment s'en servir.

signaler à un administrateur
Commentaire de hvb le 20/06/2007 18:03:15

Kornebrume : Perso  j'utilise un vieeuuuuuux logiciel qui date de 2000/2001, Winsock Packet Editor, mais si tu as un antivirus, celui ci est detecté en tant que "Hack Tool". Tu as également WireShark, anciennement Ethereal, qui est plus puissant mais moins simple d'utilisation. Enfin, tu as un sniffer spécialement conçu pour Internet Explorer, par Microsoft, mais je ne me souviens plus du nom. Tu peux trouver un equivalent ici : http://www.ieinspector.com/httpanalyzer/ (je ne l'ai pas testé)
Si avec tout ça tu ne trouve pas ton bonheur, alors cherche sur google "packet sniffer".
Voila voila

OneHacker : Je ne precise pas comment faire un post car l'utilisation de cette source sous entend que tu sais ce que tu veux faire... et donc que tu as un minimum de connaissances sur le protocole HTTP. En sniffant une requete comme je te l'avais conseillé sur le forum pour ton truc de skyblog là, tu l'aurais vu par toi même. Mais tu ne voulais pas écouter.
J'ajouterais un sample ce soir si j'y pense, MP moi si tu as un soucis.

signaler à un administrateur
Commentaire de OneHacker le 20/06/2007 20:30:42

C'est pas que je ne voulais pas écouter mais que je ne sais pas ce que "sniffer"

signaler à un administrateur
Commentaire de isame le 25/06/2007 10:39:28

salut!!
je travail actuellement sur un projet où un serveur m'envoi des requetes http par POST ou GET. Mais je suis confronté a un problème. Je ne sais pas  a quel moment la requête est envoyé. j'ai bien essayé de le faire dans le page_load() mais j'ai aucun resultat. je sais pas dans quel méthode je dois la traité. URGENTISSIME

Merci

signaler à un administrateur
Commentaire de hvb le 25/06/2007 11:37:23

le serveur t'envoie des requêtes poste sur quoi...??? Tu codes un serveur http?
Ce code est destiné à effectuer des requêtes, pas les traiter.

signaler à un administrateur
Commentaire de hvb le 25/06/2007 11:38:33

-e
...

signaler à un administrateur
Commentaire de isame le 25/06/2007 11:45:08

oui je comprend que ton code permet d'effectuer des requetes. mais met toi maintenant du coté du serveur sur lequel la requete est adressée. Exemple pratique:

j'ai un serveur avec un site.

http://www.isame.com
et jai besoin de traiter des requetes provenant d'une application utilisant ton code
par exemple tu m'envoie une requete http://www.isame.com?nom=hvb
je souhaite récupérer le parametre "nom" au niveau de mon application. et je sais pas comment le faire. j'ai essayer dans le page_load mais sans succès.

j'espère que tu me comprendra
Merci

signaler à un administrateur
Commentaire de Renfield le 25/06/2007 11:49:19 administrateur CS

dépend de la techno utilisée pour le site...

Asp/Php/...

signaler à un administrateur
Commentaire de hvb le 25/06/2007 11:59:04

comme le dit Renfield, cela depend de l'interpreteur de ton serveur.
Perso je ne fais que du PHP, ou ces infos sont stockés dans les tableaux $_GET et $_POST, avec comme clé le nom de l'element voulu.
Mais vu que tu evoque un page_load, tu dois bosser en asp...

Selon ce que je viens de lire :
Request.QueryString("aaa") 'recupere la valeur de parametre nommé "aaa"

signaler à un administrateur
Commentaire de hvb le 25/06/2007 12:03:32

il y a aussi :
Request.Params["varname"]

Mais une petite recherche sur le net doit te permettre de trouver ça. Je pense que la premiere que je t'ai donné contient les valeur GET, et celui ci les POST.
J'ai tappé "équivalent $_POST php" que google....

signaler à un administrateur
Commentaire de isame le 25/06/2007 12:43:59

je fais de l'asp.NET c# mais c pas sa mon probleme je peux récuperer les valeurs par POST ou GET ce que je demane c'est juste de savoir si, après l'utilisation de HttpRequest.GetResponse() au niveau du serveur y'a l'evenement Page_Load() qui est déclenché. Parce que à chaque requète par ta méthode je dois effectuer des traitements

signaler à un administrateur
Commentaire de OneHacker le 25/06/2007 13:49:17

Je te conseille d'aller sur le site cppfrance ou aspfrance donc.

signaler à un administrateur
Commentaire de isame le 25/06/2007 14:09:15

c pas sa le problème que ce soit en vb ou ec c# c pas le plus important. c'est le principe que je recherche

signaler à un administrateur
Commentaire de hvb le 25/06/2007 14:13:44

oneHacker : csharpfr, pas cppfrance.
Isame : Je ne saurais pas te dire, meme si il semblerait logique que ton evenement se declenche, de la meme maniere que si la page était appelé par un navigateur.
Mais OneHacker n'a pas tort, poser la question sur le forum ASP serait plus propice à obtenir une reponse... car comme je l'ai dit au dessus, je ne fais pas d'asp. Bon courage!

signaler à un administrateur
Commentaire de blehbleh123 le 18/07/2007 00:42:00

Et si jamais on a le caractère "&" dans une variable POST ? Ça bug ... ?! Comment y remédier?

signaler à un administrateur
Commentaire de Renfield le 18/07/2007 07:41:48 administrateur CS

par sa valeur hexa...

signaler à un administrateur
Commentaire de hvb le 18/07/2007 09:44:35

comme le dit Renfield, il faut échapper les caractères spéciaux en remplaçant ceux ci par leurs valeur hexa précedé de %
Donc pour l'esperluette (&) il faudra faire %26

signaler à un administrateur
Commentaire de blehbleh123 le 18/07/2007 10:12:00

Y'a t-il une commande précise pour transformer ces caractères en hexa ?

signaler à un administrateur
Commentaire de blehbleh123 le 18/07/2007 20:35:01

Quelqu'un sait ?

signaler à un administrateur
Commentaire de hvb le 18/07/2007 21:00:48

pas à ma connaissance...
soit tu echappe quelque caractères rapidement par un Replace,
soit tu utilise ça que j'ai écrit rapidement (donc testé rapidement également), qui remplace touts les caractères non alphanumérique :

    Public Function escape(ByVal str As String)
        Dim res As String = ""
        Dim cur As Integer = 0
        For i As Integer = 0 To str.Length - 1
            cur = System.Text.Encoding.ASCII.GetBytes(str.Substring(i, 1))(0)
            If ((cur >= 65) And (cur <= 90)) Or ((cur >= 97) And (cur <= 122)) Or ((cur >= 47) And (cur <= 58)) Then
                res &= Convert.ToChar(cur)
            Else
                res &= "%" & cur.ToString.PadLeft(2, "0")
            End If
        Next
        Return res
    End Function

signaler à un administrateur
Commentaire de romit le 14/12/2007 13:22:53

Salut, serais-t'il possible que le script prenne en compte les accents ? car je recoits des "?"

signaler à un administrateur
Commentaire de tricouilles le 16/12/2007 21:17:18

Dim readstr = New IO.StreamReader(hwebresponse.GetResponseStream, System.Text.Encoding.Default)

tu choisi le type d'encodage, default, utf8...

moi j'avais de carré/? !

signaler à un administrateur
Commentaire de pouda le 24/06/2008 15:04:02

heu...moi pas tout comprendre....est ce que le script permet d'envoyer des données à une page php ? si oui je ne vois pas comment récupérer ces données dans la page php..si quelqu'un pouvait me donner un exemple ca serait super cool

signaler à un administrateur
Commentaire de Renfield le 24/06/2008 15:09:25 administrateur CS

en php, on récupère via

$_GET   ou    $_POST

selon la méthode utilisée pour l'envoi des données du formulaire

exemple:
$nom = $_POST['UserName']

signaler à un administrateur
Commentaire de le_prince_des_ordinateurs le 17/07/2008 12:04:30

ce code m'a permis de me sortir d'une grosse galere
je te remercie encore

--->il me reste a savoir comment peut on envoyer un fichier en post ????<---
puisque ici on n'envoie que des string pas de file

merci encore hvb et vbfrance.com
vous dechirez

signaler à un administrateur
Commentaire de pouda le 17/07/2008 14:05:14

koooollll ca marche par contre je ne vois pas comment faire pour effectivement envoyer un fichier ...

signaler à un administrateur
Commentaire de Renfield le 17/07/2008 14:10:32 administrateur CS

faut placer le contenu du fichier dans le corps de la requette HTTP

voir les specs du HTTP

signaler à un administrateur
Commentaire de romit le 10/08/2008 18:24:04

Il me reste une dernière question, si la page demandée renvoit un cookie, comment faire pour le recuperer ?

Car on peut envoyer un cookie a la page mais je n'ai pas vu comment le recevoir.

Merci d'avance

signaler à un administrateur
Commentaire de romit le 10/08/2008 19:05:56

Et j'oubliais: Comment faire pour que le programme ne lag pas durant la recuperation de la source, car il est en mode "Ne répond pas"

signaler à un administrateur
Commentaire de hvb le 11/08/2008 12:50:04

'jour à tous, j'ai un petit peu abandonné le site, désolé et merci d'avoir laisser les autres répondre à ma place pour les différentes question ^^
Romit : pour les cookies tu as deux solutions :
la simple qui consiste à parcourir le tableau hwebresponse.Cookies qui contient tout les cookies demandés à être mis en place par le serveur (avec des propriétes name, value, path, expire, etc.)
Ou bien traiter directement l'entête HTTP renvoyé par le serveur, à coup de regex ou de methodes de la classe String, qui doit contenir des lignes
"Set-Cookie : nom_du_cookie=valeur; domain=un_nom_de_domain; expires=une_date"

Enfin pour le "ne repond pas", à toi de placer ta requete dans un thread ou un backgroundworker. Tu trouveras facilement des informations à ce sujet sur le site ^^

signaler à un administrateur
Commentaire de romit le 11/08/2008 15:58:52

D'accord, merci je vais me renseigner pour le système de thread :)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

ACCESS et INTERNET (HTTP POST/GET) [ par SqUaB ] Bonjour,Je suis à la recherche d'un moyen qui, depuis Access, me permettrait de faire des accès sur le WEB (HTTP/GET HTTP/POST). J'ai lu sur le forum Comment Faire une requete HTTP Post ? [ par Cyberdevil ] HI !EN faite ayant bcp de donnée a envoyer a un site je ne peut pas faire un simple GET (machin.htm?xx=rer etc...) donc je doit foutre les données dan Requete HTTP : POST [ par vbguigui ] Bonjour,J'aimerais avoir un programme qui créé et envoie une requete POST avec des données post. Y a-t-il quelqu'un qui sait le faire et le poster svp serveur Http et get/post [ par smasher81 ] Allo, je cherche depuis quelques temps seulement la façon de receillir un get ou un post d'une page sur mon serveur.. tout simple la.. Pourrais-tu m'a SQL Serveur et HTTP POST REQUEST [ par OneHacker ] Bon je repose mes questions car j'ai toujours pas de réponse depuis des mois, donc première question.Où trouver un installateur Microsoft SQL 2005 qui Requete HTTP [ par JALEO WAHRANI ] Salut,Je vous envoie ce post en car j'aurai besoin d'aide:Je dois depuis une appli VB envoyer des paramètres à u