Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [C#] Problema con autenticazione pagina HTML

    Con questa funzione effettuo il login su un forum phpbb:

    Codice PHP:
    private string GetSource()
            {

                      
    // Prepare the HttpWebRequest to send data to Amazon.com
                        
    string url string.Format("http://sito.it/forum/ucp.php?mode=login");

                        
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                        
    request.UserAgent "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8) Gecko/20051111 Firefox/1.5";
                        
    request.Method "POST";
                        
    request.Accept "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
                        
    request.KeepAlive true;
                        
    request.ContentType = @"application/x-www-form-urlencoded";

                        
    // Send the log-in data
                        
    string postData =
                            
    "username=aaaaa" +
                            
    "&password=bbbbbb" +
                             
    "&autologin=1" +
                             
    "&redirect=index.php" +
                             
    "&login=Log In\"";

               
                    
    byte[] postBuffer System.Text.Encoding.GetEncoding(0).GetBytes(postData);
                    
    request.ContentLength postBuffer.Length;
                    
    Stream postDataStream request.GetRequestStream();

                    
    postDataStream.Write(postBuffer0postBuffer.Length);
                    
    postDataStream.Close();

                    
    // Get the response
                    
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                    
    // Read the response from the stream
                    
    Encoding enc System.Text.Encoding.UTF8;
                    
    StreamReader responseStream = new StreamReader(response.GetResponseStream(), enctrue);

                    
    string responseHtml responseStream.ReadToEnd();
                    
    response.Close();
                    
    responseStream.Close();

                    return 
    responseHtml;
                  
            } 
    Funziona tutto correttamente, ma le successive pagine che richiedo con la seguente funzione non sono loggate.


    Codice PHP:
      private string ottienipagina(string url
           {
               
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
               
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
               
    StreamReader responseStream = new StreamReader(response.GetResponseStream());
               
    String output responseStream.ReadToEnd();
               
    responseStream.Close();
               
    response.Close();

               return 
    output;
           } 
    Come faccio quindi a mantenere attiva la sessione del login? So' che phpbb lascia un cookie, magari potrei usare quello. ma come gestire i cookie?


    grazie

  2. #2

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.