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 !

RECUPERER LES ENTETES MIMES GET/POST


Information sur la source

Description

Cette petite source sert à récupérer les entêtes mimes d'une page. Pour l'utiliser correctement, il vous faut rediriger la balise "ACTION" de votre formulaire vers "http://localhost" (par ex: http://www.blabla.com/redir.asp en http://localhost).
Il vous suffit ensuite de visualiser le fichier en HTML (rien d'extraordinaire donc) et de valider le formulaire. Les entetes Mimes vont automatiquement être inscrites dans la textbox

Pour ce projet, il vous faut un socket(A renommer en Sock1), un textbox (Text1) (multiligne avec scroll), une form (Form1 ... bah oui, mais c'est pas évident pour certain apparement) et c'est tout.
 

Source

  • Private Sub Form_Load()
  • Show
  • Sock1.LocalPort = 80
  • Sock1.Listen
  • End Sub
  • Private Sub Sock1_ConnectionRequest(ByVal requestID As Long)
  • If Sock1.State <> sckClosed Then Sock1.Close
  • Sock1.Accept requestID
  • End Sub
  • Private Sub Sock1_DataArrival(ByVal bytesTotal As Long)
  • Dim strData As String
  • Sock1.GetData strData, vbString
  • Text1.Text = Text1.Text + strData
  • Sock1.Close
  • End Sub
Private Sub Form_Load()
Show
Sock1.LocalPort = 80
Sock1.Listen
End Sub

Private Sub Sock1_ConnectionRequest(ByVal requestID As Long)
If Sock1.State <> sckClosed Then Sock1.Close
Sock1.Accept requestID
End Sub

Private Sub Sock1_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
Sock1.GetData strData, vbString
Text1.Text = Text1.Text + strData
Sock1.Close
End Sub

Commentaires et avis

signaler à un administrateur
Commentaire de skyraider le 27/11/2003 13:36:43

Pas très difficile...

signaler à un administrateur
Commentaire de gabchampagne le 27/11/2003 14:22:30

lol. c cave FAIT QUELQUE CHOSE QUI ANALYSE BON SANG. POST est simple:

1-Tu envoie un header HTTP "POST"
2- 2 retours de chariots chr(13)+chr(10)
3- Le format :
"champs"="valeur"&"champs"="valeur"

signaler à un administrateur
Commentaire de Cyberdevil le 27/11/2003 15:11:22

bcp plus simple de renseigner le champs proxy d'IE par localhost..
ainsi pas besoin de modifier la page !

signaler à un administrateur
Commentaire de gabchampagne le 27/11/2003 18:52:02

Est-ce que quelqu'un saurais comment faire pour convertir les valeurs pour que "a b" = a%20b" parce que les valeurs ne doivent pas contenir certains caractères. Je crois qu'il y a aussi moyen d'envoyer des données avec GET. La seule différence est que la méthode est GET. P.S. Avec post, je crois qu'il est oubligatoire d'indiquer la taille de "content" (dans le header) avec :


Content-Lenght: "TAILLE DU CONTENT"

Il y a aussi Content-Type qui renvoie le type MIME

j'ai une idée si tu veux faire de quoi de hot : Voici ce que ça va faire. Sa va écrire dans un fichier dans le path du programme le fichier auquel le client voulait se connecter et lister tout les champs avec leur valeur. C'est propre.

ajoute sa dans DataArrival :

Sock1.GetData strData, vbString
dim fso,texte,apppath,col,vars,f
apppath=app.path
if right(apppath,1) &lt;&gt; "" then apppath=apppath & ""
col=split(strdata,chr(13)+chr(10) & chr(13)+chr(10),2)
vars=col(ubound(col))
col=split(strdata,chr(13)+chr(10))
col=split(col(10)," ",3)
if ubound(col)&gt;1 then
f=col(1)
end if
col=split(vars,"&")
set fso=createobject("scripting.filesystemobject")
set texte=fso.opentextfile(apppath & "vars.txt",8,true)
texte.write f  & vbcrlf
for i = 0 to ubound(col)
texte.write col(i) & vbcrlf
next
texte.write vbcrlf
texte.close
set fso=nothing
set texte=nothing


signaler à un administrateur
Commentaire de gabchampagne le 27/11/2003 18:54:26

oops, je veux dire

Sock1.GetData strData, vbString
dim fso,texte,apppath,col,vars,f
apppath=app.path
if right(apppath,1) &lt;&gt; "" then apppath=apppath & ""
col=split(strdata,chr(13)+chr(10) & chr(13)+chr(10),2)
vars=col(ubound(col))
col=split(strdata,chr(13)+chr(10))
col=split(col(0)," ",3)
if ubound(col)&gt;1 then
f=col(1)
end if
col=split(vars,"&")
set fso=createobject("scripting.filesystemobject")
set texte=fso.opentextfile(apppath & "vars.txt",8,true)
texte.write f  & vbcrlf
for i = 0 to ubound(col)
texte.write col(i) & vbcrlf
next
texte.write vbcrlf
texte.close
set fso=nothing
set texte=nothing

signaler à un administrateur
Commentaire de EBArtSoft le 28/11/2003 10:56:32 administrateur CS

c'est simple pour " " = %20 car Hex$(Asc(" ")) = "20"
en fait c'est juste la representation hexadecimal du caractere en question generalement pout tout les caracteres non AlphaNumerique

que ce soit dans la method POST ou GET le content n'est pas obligatoire tout depend de la version HTTP et des preferences
du serveur (voir les RFC correspondante).

@+

signaler à un administrateur
Commentaire de gabchampagne le 28/11/2003 15:08:25

Je sais. GET est plutot conçut pour télécharger une page web. Mais POST, lui sert à poster des données donc il devrait normalement en contenir (sauf qulques exceptions).

signaler à un administrateur
Commentaire de gabchampagne le 28/11/2003 18:55:50

Pi merci EB. Ça va m'aider pour mon serveur HTTP.

signaler à un administrateur
Commentaire de gabchampagne le 28/11/2003 19:01:35

Pi une question. POURQUOI DONNEZ VOUS 10/10 à ça. C bien trop simple. C comme si je mettais mon prog pour tester mes serveurs sur le site et que j'aurais 10/10! Inclu au moins la source que j'ai fourni. Là ça vaudrait de quoi.

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


HTC G1

Entre 449€ et 449€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,484 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.