IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Discussion :

Problemes avec FtpWebRequest


Sujet :

Services Web

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Par défaut Problemes avec FtpWebRequest
    Bonjour,

    La fonction suivante fonctionne très bien lorsque je lui passe un username/password que l'ISP m'a donné en tant que propriétaire du site. SI je créer un nouveau FTP user et que j'insère maintenant le username/password du compte usagé, ca ne fonctionne plus! Si j'utilise un client FTP et que j'utilise les mêmes paramètres, ca fonctionne et je peux uploader les fichiers. Le problème, c'est que c'est mon application qui doit uploader les fichiers et pas un client FTP.

    J'ai téléphoné à leur service à la clientèle et ils n'y comprennent rien. Se pourrait-il que parce que leur nom d'usagé FTP contient un "." par défaut, que la chaîne qui est passée contient un caractère invalide? Je suis nouveau en C# et je suspecte n'importe quoi.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     public void upload()
            {
                ModifyRegistry myRegistry = new ModifyRegistry();
                myRegistry.SubKey = "SOFTWARE\\JJJJJJJJJ\\VIDEO";
                myRegistry.ShowError = true;
                string path = myRegistry.Read("path");
     
                string FTPAddress = "ftp://JJJJJJ@JJJJJJ.ca";
                string filePath =  path + fileName;
     
                string username = "usage.1";
                string password = "123456";
     
                try
                {
                    FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(FTPAddress + "//www//fffffff.com//library//" + Path.GetFileName(filePath));
     
                    request.Method = WebRequestMethods.Ftp.UploadFile;
                    request.Credentials = new NetworkCredential(username, password);
                    request.UsePassive = true;
                    request.UseBinary = true;
                    request.KeepAlive = false;
     
     
     
                    //Load the file
                    FileStream stream = File.OpenRead(filePath);
                    byte[] buffer = new byte[stream.Length];
     
                    stream.Read(buffer, 0, buffer.Length);
                    stream.Close();
     
                    //Upload file
                    Stream reqStream = request.GetRequestStream();
                    reqStream.Write(buffer, 0, buffer.Length);
                    reqStream.Close();
     
                    // delete File on hard disk
                    DeleteFile(filePath);
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Unable to upload file\n" + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }

  2. #2
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string FTPAddress = "ftp://JJJJJJ@JJJJJJ.ca";
    JJJJJJ@JJJJJJ ? pourquoi un @ ? (ie. pourquoi spécifier un nom d'utilisateur ?)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Par défaut
    "ftp://JJJJJJ@JJJJJJ.ca" n'est pas un nom d'utilisateur. C'est l'adresse FTP de mon ISP.

  4. #4
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Sauf que si tu essayes par exemple d'accéder à ftp://machin@smyley.developpez.com ça veux dire que tu tentes d'accéder au serveur ftp://smyley.developpez.com avec comme nom d'utilisateur "machin" et il est alors demandé un mot de passe pour le compte d'utilisateur "machin" (qui n'existe pas soit dit en passant).

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Par défaut
    Je ne sais pas ou tu veux en venir. L'adresse FTP de mon ISP est : ftp://globalarm@globalarm.ca. J'ai confirmé avec eux et c'est ok.

    Si j'utilise un client FTP comme FileZilla, je peux très bien uploader les fichier avec le username/passsword de mon nouvel usager FTP. Le problème provient de .NET.

    En plus, si je change le username/password pour le mien, aucun problème. C'est fou non?

    Lorsque j'essaie d'uploader, voici l'erreur que le serveur me renvoit:
    "The remote server returned an error: (550) File unavailable (e.g., file not found, no access)".
    J'ai trouvé beaucoup de rubrique sur le Web mais aucune solution.

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par acheo Voir le message
    En plus, si je change le username/password pour le mien, aucun problème. C'est fou non?
    Ce n'est pas fou, c'est tout à fait normal : tu instancies un NetworkCredential avec des info de compte n'apparenant pas au domaine local, comment veux tu qu'il s'y retrouve ?

    A contrario, quand tu utilises le tien, qui, on le suppose, appartient au domaine de la machine où s'exécute ton appli, il retrouve ses petits.

Discussions similaires

  1. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  2. Problèmes avec le filtrage des ip
    Par berry dans le forum Réseau
    Réponses: 9
    Dernier message: 30/12/2002, 07h51
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo