View Full Version : [JAVA] visitare url riservati
Ciao,
in pratica ho un programma java che deve visitare degli url web di cui devo scaricare il contenuto che necessitano di autentificazione, come posso fare?
Le pagine in questione reindizzano a una pagina con un form di login se non ci si è precedentemente autenficati al sito.
Ho cercato in rete, ma questo non ha funzionato
String encoding = new sun.misc.BASE64Encoder().encode ("password".getBytes());
URLConnection con = url.openConnection();
con.setRequestProperty ("Authorization", "Basic " + encoding);
Qualcuno sa darmi qualche suggerimento ?
in pratica ho un programma java che deve visitare degli url web di cui devo scaricare il contenuto che necessitano di autentificazione, come posso fare?
Le pagine in questione reindizzano a una pagina con un form di login se non ci si è precedentemente autenficati al sito.
Ho cercato in rete, ma questo non ha funzionato
String encoding = new sun.misc.BASE64Encoder().encode ("password".getBytes());
URLConnection con = url.openConnection();
con.setRequestProperty ("Authorization", "Basic " + encoding);
Qualcuno sa darmi qualche suggerimento ?Innanzitutto c'è da precisare che una cosa è un "basic authentication" (vedi <qui> (http://en.wikipedia.org/wiki/Basic_access_authentication)) che è gestito a livello di protocollo HTTP e un'altra cosa è una autenticazione gestita tramita una pagina html che contiene un banale form i cui dati sono poi inviati ad un url tramite un "post". Sono due cose ben diverse.
Quindi, giusto per iniziare, specifica magari il sito o descrivi cosa/come viene richiesto per l'autenticazione.
Hai assolutamente ragione, ho sbagliato. Non so perché mi ero fissato con l'autentificazione Basic.
Allora in pratica c'è una pagina con un form di login per autenticarsi.
Io dovrei riuscire a simulare il comportamento del browser ossia autentificarmi (cosa fatta) e poi mantenere l'autentificazione per visitare altre pagine di cui scaricare il contenuto.
Ora l'applicazione che gira sul server è fatta in coldfusion e non riesco a capire come mantenere l'autentificazione fatta simulando la submit in POST del form di login.
Ho provato a vedere se negli header http mi torna un ID di sessione o quant'altro ma l'unica cosa che vedo è
un CFID= xxxxxx CFTOKEN=xxx usati da coldfusion per autentificare la sessione.
Il problema è che non so come settarli nellamia connessione, ho provato con
con.setRequestProperty("CFID", "CFID=xxx");
con.setRequestProperty("CFTOKEN", "CFTOKEN=xxx");
con.setRequestProperty("URLTOKEN", "CFID=xxx&CFID=xxx");
provando in varie combinazioni ma niente mi torna sempre un codice 400 di http
spero ora il problema sia un attimo più chiaro
C'è un mio esempio per fare un semplice POST in Java in <questo> (http://www.hwupgrade.it/forum/showthread.php?t=1330750) thread, magari ti può essere utile.
Per la gestione dei cookie, è un altro discorso.
Il problema è che io sono bloccato sull'altro discorso...qualcuno mi sa aiutare in qualche modo
uppete..coldfusion mi sta uccidendo :help:
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.