Salve a tutti,
un saluto a tutti per la prima volta![]()
e ora vi espongo il mio problema:
sta diventando ormai una questione d'onore per me da programmatore.
le sto provando tutte per riuscire a fare login da codice java su youtube.
ora mi sono fissato con HTTP Client che mi rende più corto il codice, ma ancora non riesco a capire dove sbaglio. HO bisogno di AIUTO!!
per quello che ho capito (perchè mi rendo conto che mi manca qualche parte teorica per capire la parte pratica) ho provato a fare la richiesta POST, e poi per controllare se il server lo ha ricevuta, guardo i cookie che mi ritornano. Ma non ce traccia di cookie che riguardano la sessione di login. E me da l'impressione che neanche abbia mandato la richiesta.
ora vi attacco un pezzo di codice per farvi vedere dove sono arrivato.
String username = "myUsername";
String password = "myPassword";
Credentials defaultcreds = new UsernamePasswordCredentials(username, password);
HostConfiguration host = client.getHostConfiguration();
host.setHost(new URI("http://it.youtube.com/login", true));
AuthScope auth = new AuthScope(host.getHost(), host.getPort());
HttpState initState = new HttpState();
initState.setCredentials(auth, defaultcreds);
PostMethod postMethod = new PostMethod();
postMethod.setDoAuthentication(true);
NameValuePair[] data = {
new NameValuePair("username", username),
new NameValuePair("password", password),
};
postMethod.setRequestBody(data);
postMethod.setURI(new URI("http://it.youtube.com/login", true));
HttpClient client = new HttpClient();
client.setState(initState);
int result = client.executeMethod(postMethod);
System.err.println("Result: " + result);
System.out.println("Present cookies: ");
myCookies = initState.getCookies();
for (int i = 0; i < myCookies.length; i++) {
System.out.println(" -COOKIE - " + myCookies[i].toExternalForm());
}
postMethod.releaseConnection();

