Acessar site e manter-se logado

2 respostas
B

Boa Tarde.

Estou desenvolvendo uma aplicação que acessaria uma área restrita de um site e logo pós percorriria algumas páginas fazendo download de alguns itens.

Estou conseguindo acessar a página que se faz o login, enviar um post e receber a página que vem após o login ser efetuado, porém quando tento acessar as páginas que necessio, a resposta do site é como se eu não estivesse logado.

Como posso fazer para “segurar” esse login enquanto faço o que necessito?

Abaixo está um exemplo de como estou fazendo esse login

String urlName = "pagina do Form action";
 
      try {
 
         URL url = new URL(urlName);
         HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
         urlConnection.setDoOutput(true);
         
         OutputStreamWriter out = new OutputStreamWriter(urlConnection.getOutputStream());
         out.write("local=XXXX&usuario=XXX&senha=XXXX");
         out.close();
         
         BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
 
         
         
         String line = null;
 
         while( (line = in.readLine()) != null ){
            System.out.println(line);
         }
 
         in.close();
         urlConnection.disconnect();
 
      } catch (MalformedURLException e){
         System.out.println("Erro ao criar URL. Formato inválido.");
         System.exit(1);
      } catch (IOException e2) {
         System.out.println("Erro ao acessar URL."+e2);
         System.exit(1);
      }

2 Respostas

andreiribas

Ou passar sempre o jsessionid do primeiro acesso ou implementar algum mecanismo de cookies.

B

Resolvido

Utilizei as libs do apache.org.

Crio umm HttpClient e ele já manipula sessão e status de navegação automaticamente, após fazer o login utilizando o PostMethod, utilisei o GetMethod para buscar a url que gostaria de dentro da área restrita.

Agora vou terminar lá qu o negócio é corrido, ahaha

Obrigado

Criado 25 de setembro de 2010
Ultima resposta 25 de set. de 2010
Respostas 2
Participantes 2