Question (Normal User)
Rookie
Messaggi: 58
Iscritto: 14/12/2010
|
Ciao a tutti ragazzi,
premetto che sono nuovo del vb.net e che sto leggendo la vostra guida,quello che stavo cercando di fare è piuttosto semplice:
effettuare il login ad un sito web da vb.net e poi vedere il sorgente di un'altra pagina accessibile solo ai loggati.
Il sito mi permette di fare il login da url (es. http://www.sito.com/login.php?&username=Question&password=123) solo che se provo a visitarlo ad esempio con l'oggetto webclient non mi fà entrare(penso perché non accetta i cookies o qualcosa del genere); come posso fare senza usare un webbrowser?
Volevo precisare che nel vecchio vb6 riuscivo a farcela grazie ad una serie di dll,ma che qui non so proprio come muovermi
|
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
devi capire come e dove il sito memorizza le informazioni di avvenuto login: querystring, cookie, hidden field, etc...
partendo da questo puoi replicare queste informazioni nella seconda webrequest in modo da mostrare al webserver che sei ancora tu
|
|
Question (Normal User)
Rookie
Messaggi: 58
Iscritto: 14/12/2010
|
mi puoi fare un esempio? >_>
|
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
Postato originariamente da Question:
mi puoi fare un esempio? >_> |
esempio banale sarebbe aggiungere alla seconda webrequest un cookie creato dalla prima come conseguenza del login |
|
Question (Normal User)
Rookie
Messaggi: 58
Iscritto: 14/12/2010
|
Grazie delle risposte ma sin qua avevo capito, non ho proprio idea della sintassi per fare quello che dici tu
Qualche link guida? Qualche esempio di codice già scritto? Qualsiasi cosa mi sarebbe d'aiuto,su google non riesco a trovare niente e attualmente non ho un libro sul vb.net (ma non penso ci sia la soluzione)
Il webbrowser è fattibile,però lo vedo proprio come ultima spiaggia data la pesantezza della procedura
Ultima modifica effettuata da Question il 14/12/2010 alle 23:39 |
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
Postato originariamente da Question:
Grazie delle risposte ma sin qua avevo capito, non ho proprio idea della sintassi per fare quello che dici tu
Qualche link guida? Qualche esempio di codice già scritto? Qualsiasi cosa mi sarebbe d'aiuto,su google non riesco a trovare niente e attualmente non ho un libro sul vb.net (ma non penso ci sia la soluzione)
Il webbrowser è fattibile,però lo vedo proprio come ultima spiaggia data la pesantezza della procedura |
Ultima modifica effettuata da HeDo il 14/12/2010 alle 23:42 |
|
Question (Normal User)
Rookie
Messaggi: 58
Iscritto: 14/12/2010
|
Allora ho letto e riletto quei link,penso che si debba scrivere una procedura del genere:
Codice sorgente - presumibilmente VB.NET |
Imports System.net 'c'è la classe e tutto il resto [...] Private sub Procedura() dim hRequest as httpWebRequest= DirectCast(webRequest.create("http://www.sito.com/login?=&username=Question&password=123),httpWebRequest) hRequest.CookieContainer = New CookieContainer() request.CookieContainer.Add(New Uri("http://sito.com"), New Cookie("NOME_COOKIE", "VALORE_COOKIE")) 'qui inserisco il resto della routine per ottenere il sorgente della pagina con httpRequest[...] End Sub
|
Ecco però avrei delle domande:
1)come mai sono costretto ad usare DirectCast ed ad effettuare una conversione?
2)se il sito dove faccio il login assegna un valore random al cookie come posso fare? Tra i vari sorgenti che ho letto mi pare d'aver capito che devo usare l'httpWebResponse
3)In particolare ho trovato un link ad una domanda in un forum con il mio stesso problema,dando una letta al codice postato mi sembrava tutto ok (data anche la risposta che in teoria "avrebbe illuminato" il creatore del topic ma che a me non dice niente)
http://www.vbdotnetforums.com/net-sockets/28191-httpwebreq ...'>http:// http://www.vbdotnetforums.com/net-sockets/28191-htt ... <---
Aiuto
EDIT
Ma ce la fà il foro ad accettarmi un ipertestuale senza incasinarmelo? :/ [_url] sito [*url] (al posto di * un / e al posto di _ uno spazio) non funge,[url=sito]nome [*url] non funge,il sito scritto senza tag non funge, e che cavolo xD
Ultima modifica effettuata da Question il 15/12/2010 alle 19:38 |
|