Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - vb.net postare login e recuperare pagine più volte
Forum - C# / VB.NET - vb.net postare login e recuperare pagine più volte

Avatar
seven.7 (Normal User)
Rookie


Messaggi: 30
Iscritto: 24/12/2006

Segnala al moderatore
Postato alle 16:32
Venerdì, 13/04/2007
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



PM Quote