[Visual Basic 2005 Express] S'authentifier à un site web
nediug
Messages postés4Date d'inscriptionmercredi 16 mai 2007StatutMembreDernière intervention25 mai 2007
-
21 mai 2007 à 16:12
nediug
Messages postés4Date d'inscriptionmercredi 16 mai 2007StatutMembreDernière intervention25 mai 2007
-
22 mai 2007 à 14:54
Bonjour à tous,
J'aimerai dans le cadre d'une petite application, me connecter automatiquement à une page web qui necessite une authentification. L'authentification se fait à partir de 2 champs : login, mot de passe (exemple: du type hotmail ou autre).
Merci bcp de votre aide
A voir également:
[Visual Basic 2005 Express] S'authentifier à un site web
hvb
Messages postés939Date d'inscriptionvendredi 25 octobre 2002StatutMembreDernière intervention27 janvier 20093 21 mai 2007 à 23:04
il va falloir que tu simule la requete web que ton browser effectue lorsque tu le logue. Je te conseille de sniffer celle ci, et de la reproduire à l'identique dans ton prog.
Jette un oeil à ce code qui pourra t'aider pour l'execution de requetes http :
nediug
Messages postés4Date d'inscriptionmercredi 16 mai 2007StatutMembreDernière intervention25 mai 2007 22 mai 2007 à 14:54
Merci beaucoup pour ton aide, mais etant novice dans le vb, j'aimerai un petit coup de pouce.
Je dois utiliser la fonction Post_request, le résultat est stocké dans une variable testurl (de type string), que j'envoie dans la methode du web browser, est ce la bonne méthode? je ne pense pas car cela ne fonctionne pas
testurl = Post_request(url, login, pass)
Web_test.Navigate(
New Uri(testurl))
Rappel de la fonction :
Function Post_request(ByVal url As String, ByVal data As String, Optional ByVal login As String "", Optional ByVal pass As String "") As String
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
If login <> "" Then
Dim hcredential As New System.Net.NetworkCredential(login, pass)
hwebrequest.Credentials = hcredential
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
Return reader.ReadToEnd() 'on renvoie l'ensemble du resultat
reader.Close() 'on ferme l'objet
Catch ex As Exception
Return ex.Message.ToString
writer.Close()
reader.Close()
End Try
End Function