Oppure

Loading
03/11/10 20:41
ste3191
Salve, dovrei fare una pagina asp.net, la quale deve effettuare il login su un sito in automatico. L'ho fatto in VB.NET e nessun problema poichè c'è il controllo webbrowser ( quindi getelementid ecc ecc) , ma in asp.net??? Ho provato anke a scrivere uno script java ma nn mi funziona il riempimento dei campi.
P.S. non mi serve vedere la pagina del login, mi basta la connessione. Come faccio??????? Ci sono delle classi che risolvono il problema??

Grazie!
aaa
03/11/10 21:25
LittleHacker
Postato originariamente da ste3191:

Salve, dovrei fare una pagina asp.net, la quale deve effettuare il login su un sito in automatico. L'ho fatto in VB.NET e nessun problema poichè c'è il controllo webbrowser ( quindi getelementid ecc ecc) , ma in asp.net??? Ho provato anke a scrivere uno script java ma nn mi funziona il riempimento dei campi.
P.S. non mi serve vedere la pagina del login, mi basta la connessione. Come faccio??????? Ci sono delle classi che risolvono il problema??

Grazie!


Classe WebRequestPost e Request Post
forum.html.it/forum/showthread/…
:k:
aaa
04/11/10 20:06
ste3191
Ho provato questo script ma non credo che funzioni, anche perchè non so come vedere se sono stato loggato. Voglio fare il login a megaupload ad esempio:

Protected Sub cmdmega_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdmega.Click
Dim postData As String
postData = "username=*****&password=******"
Dim request As Net.HttpWebRequest
Dim response As Net.HttpWebResponse
request = CType(Net.WebRequest.Create("megaupload.com/;), Net.HttpWebRequest)
request.ContentType = "application/x-www-form-urlencoded"
request.ContentLength = postData.Length
request.Method = "POST"
request.AllowAutoRedirect = False

Dim requestStream As IO.Stream = request.GetRequestStream()
Dim postBytes As Byte() = Encoding.ASCII.GetBytes(postData)
requestStream.Write(postBytes, 0, postBytes.Length)
requestStream.Close()
response = CType(request.GetResponse(), Net.HttpWebResponse)

Console.WriteLine(New IO.StreamReader(response.GetResponseStream()).ReadToEnd())
Console.WriteLine("Headers:";)
Console.WriteLine(response.Headers.ToString())
End Sub
End Class

Che ne dite??
aaa
04/11/10 21:00
LittleHacker
Postato originariamente da ste3191:

Ho provato questo script ma non credo che funzioni, anche perchè non so come vedere se sono stato loggato. Voglio fare il login a megaupload ad esempio:


Beh primo dovresti inserire il codice tra:


codice


così si vede meglio e poi per vedere se sei loggato ti crei un'iframe(adesso non so il controllo) e da li vedi tutto quello che succede cioè visualizzi la pagina di megaupload prima del login poi nell'evento del login alla fine inserisci un refresh dell'iframe e vedi se sei loggato...non so se funziona perchè non ho mai fatto quei tipi di programmi e non ho utilizzato mai asp.net...io ti ho dato solo uno spunto poi per altro che google!:k:
aaa
04/11/10 21:24
ste3191
Ho provato questo codice preso dalla guida msdn

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmd2.Click
Dim request As WebRequest = WebRequest.Create("megaupload.com/;)
' Set the Method property of the request to POST.
request.Method = "POST"
' Create POST data and convert it to a byte array.
Dim postData As String = "username=****&password=*****"
Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postData)
' Set the ContentType property of the WebRequest.
request.ContentType = "application/x-www-form-urlencoded"
' Set the ContentLength property of the WebRequest.
request.ContentLength = byteArray.Length
' Get the request stream.
Dim dataStream As Stream = request.GetRequestStream()
' Write the data to the request stream.
dataStream.Write(byteArray, 0, byteArray.Length)
' Close the Stream object.
dataStream.Close()
' Get the response.
Dim response As WebResponse = request.GetResponse()
' Display the status.
Console.WriteLine(CType(response, HttpWebResponse).StatusDescription)
' Get the stream containing content returned by the server.
dataStream = response.GetResponseStream()
' Open the stream using a StreamReader for easy access.
Dim reader As New StreamReader(dataStream)
' Read the content.
Dim responseFromServer As String = reader.ReadToEnd()
' Display the content.
Console.WriteLine(responseFromServer)

lblresponse.Text = responseFromServer
' Clean up the streams.
reader.Close()
dataStream.Close()
response.Close()

End Sub

la labelresponse l'ho messa io per vedere cosa restituisce, in effetti caricà la pagina del login, ma i campi non sono riempiti e quindi non sono autenticato.Una cosa che non ho capito, lo script dovrebbe anche "simulare" il pulsante del login solo con l'invio dei dati??? Mi servirebbe 1 cosa automatica..

Grazie in anticipo!
aaa