2010-11-02 3 views

Répondre

3

Plusieurs façons d'aborder cela. Vous pouvez utiliser l'API WinInet, l'API WinHTTP, WinHTTPRequest ou XMLHTTPRequest. Je préfère le Winsock inférieur nivelé, et vous pouvez lire à ce sujet ici: http://www.vbforums.com/showthread.php?t=334645. Winsock est un peu plus compliqué, mais un peu plus puissant, à mon avis. Si vous voulez le faire de manière simple et douce, XML HTTP Request est le chemin à parcourir, je l'utilise aussi en javascript. Essayez quelque chose comme:

Set myMSXML = New MSXML.XMLHTTPRequest 
myMSXML.open "POST", URL, True 
myMSXML.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
myMSXML.setRequestHeader "User-Agent", "Firefox 3.6.4" 
myMSXML.OnReadyStateChange = (Shown below) 
myMSXML.send YourPostDataString 

Et la fonction OnReadyStateChange:

Dim HttpResponse As String 

HttpResponse = myMSXML.responseText 

Si vous trouvez mon code ne fonctionne pas, ou que vous êtes un peu confus, je suis désolé, je suis un peu rouillé avec VB de nos jours. Vous pouvez consulter la documentation officielle de Microsoft sur XMLHTTPRequest ici: http://msdn.microsoft.com/en-us/library/ms759148%28VS.85%29.aspx

+0

+1 Similaire au code publié dans [cette question] (http://stackoverflow.com/questions/749491/soap-post-failure) ce qui est un bon signe. – MarkJ

3

Nous pouvons le faire de cette façon aussi

Set myMSXML = CreateObject("Microsoft.XmlHttp") 
myMSXML.open "POST", "http://....", False 
myMSXML.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
myMSXML.setRequestHeader "User-Agent", "Firefox 3.6.4" 
myMSXML.send "param1=value2&param2=value2" 
MsgBox myMSXML.responseText 

Plus de références vous pouvez vérifier http://smartreferences.blogspot.in

Questions connexes