Vb.net postare login e recuperare pagine più volte

venerdì 13 aprile 2007 - 15.32

seven.7 Profilo | Junior Member

Salve, io mi chiamo enzo ed ho un problemone che non riesco a risolvere in vb.net: io stò creando un'applicazione che si collega al sito del gestore telefonico 3, fa il login e scarica due pagine web in modo da poterle elaborare e da poter estrapolare i dati richiesti. Dopo ricerche e studio sono arrivato a concludere questo script in allegato: quando eseguo una sola volta la funzione tutto funziona correttamente ma quanto richiamo può volte la funzione mi da errore di timeout al punto indicato. Ho provato a gestire gli errore con try, catch ecc... ma niente di fatto: la cosa strana poi è che a volte la seconda volta che richiamo la funzione tutto procede tranquillo ma poi inevitabilente alla volta successiva il programma si blocca. Sono sicuro che mi aiuterete e Vi ringrazio anticipatamente.... :D grazie mille e ciao


Public Shared Function FormLoginGet2(ByVal loginUri As String, ByVal loginData As String, ByVal requestUri As String)

Dim cookieContainer As New CookieContainer()

Dim richiesta1 As HttpWebRequest

richiesta1 = DirectCast(HttpWebRequest.Create(loginUri), HttpWebRequest)

richiesta1.CookieContainer = cookieContainer

richiesta1.Method = "POST"

richiesta1.ContentType = "application/x-www-form-urlencoded"

richiesta1.Timeout = 5000

Dim encoding As New ASCIIEncoding()

Dim loginDataBytes As Byte() = encoding.GetBytes(loginData)

richiesta1.ContentLength = loginDataBytes.Length

Dim stream As Stream

stream = richiesta1.GetRequestStream()

stream.Write(loginDataBytes, 0, loginDataBytes.Length)

stream.Close()

Dim risposta1 As HttpWebResponse

risposta1 = DirectCast(richiesta1.GetResponse(), HttpWebResponse)

Dim richiesta2 As HttpWebRequest

richiesta2 = DirectCast(HttpWebRequest.Create(requestUri), HttpWebRequest)

richiesta2.CookieContainer = cookieContainer

richiesta2.Method = "GET"

richiesta2.ContentType = "application/x-www-form-urlencoded"

richiesta2.Timeout = 20000

Dim risposta2 As HttpWebResponse

risposta2 = DirectCast(richiesta2.GetResponse(), HttpWebResponse) --------------------------------------------------------------<<<<<<<<<<<< questo punto maledetto :D

Dim sr As New StreamReader(risposta2.GetResponseStream())

Dim risultato As String = sr.ReadToEnd()

Return risultato

End Function


Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5