Come controllare la connessione FTP?

C’è un semplice, modo veloce per verificare che la connessione FTP (include host, porta, nome utente e password) è valido e funzionante? Sto usando C#. Grazie.

Essere sicuri di accettare una risposta adeguata a questa.

InformationsquelleAutor Vimvq1987 | 2010-07-13

5 Replies
  1. 3

    Si potrebbe provare a utilizzare
    System.Net.FtpWebRequest e poi basta controllare il GetResponseStream metodo.

    Quindi qualcosa di simile

    System.Net.FtpWebRequest myFTP = new System.Net.FtpWebRequest
    
    //Add your credentials and ports
    
    try
    {
        myFTP.GetResponseStream();
       //set some flags
    }
    catch ex
    {
      //handle it when it is not working
    }
    il tuo codice non compila
    -1 perché FtpWebRequest non contiene GetResponseStream metodo e FtpWebRequest non contiene costruttore senza parametri (non contiene costruttore pubblico).

    InformationsquelleAutor msarchet

  2. 16

    provare qualcosa di simile a questo:

            FtpWebRequest requestDir = (FtpWebRequest)FtpWebRequest.Create("ftp://ftp.google.com");
            requestDir.Credentials = new NetworkCredential("username", "password");
            try
            {
                WebResponse response = requestDir.GetResponse();
                //set your flag
            }
            catch
            {
            }
    Ho implementato qualcosa di simile alla soluzione anishMarokey, tuttavia questo sembra non riuscire quando si tratta di proteggere i siti ftp. Avete idee su come testare una connessione ftp? Grazie.
    Per questo codice funziona è inoltre necessario impostare il metodo di richiesta (cioè requestDir.Metodo = WebRequestMethods.Ftp.ListDirectoryDetails).
    non ha ancora il supporto SFTP, ma ci sono librerie come SSH.NET che hanno tale funzionalità

    InformationsquelleAutor anishMarokey

  3. 5

    /*Hola
    Este es el metodo que utilizo si conoces uno mejor hasmelo sciabola
    Ubirajara 100% Mexicano
    [email protected]
    */

    private bool isValidConnection(string url, string user, string password)
            {
                try
                {
                    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(url);
                    request.Method = WebRequestMethods.Ftp.ListDirectory;
                    request.Credentials = new NetworkCredential(user, password);
                    request.GetResponse();
                }
                catch(WebException ex)
                {
                    return false;
                }
                return true;
            }
    StackOverflow utilizza l’inglese come lingua principale.
    es.stackoverflow.com

    InformationsquelleAutor Ubirajara Erthal

  4. -2

    Questo è dal sito msdn per visualizzare i file da un server

    public static bool DisplayFileFromServer(Uri serverUri)
    {
    //The serverUri parameter should start with the ftp://scheme. 
    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    //Get the object used to communicate with the server.
    WebClient request = new WebClient();
    
    //This example assumes the FTP site uses anonymous logon.
    request.Credentials = new NetworkCredential ("anonymous","[email protected]");
    try 
    {
        byte [] newFileData = request.DownloadData (serverUri.ToString());
        string fileString = System.Text.Encoding.UTF8.GetString(newFileData);
        Console.WriteLine(fileString);
    }
    catch (WebException e)
    {
        Console.WriteLine(e.ToString());
    }
    return true;
    }

    InformationsquelleAutor rainhider

Lascia un commento