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

Langages Discussion :

Pas de réponse après upload de fichier


Sujet :

Langages

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 4
    Par défaut Pas de réponse après upload de fichier
    http://pastebin.com/7qtAYc7E
    http://msdn.microsoft.com/fr-fr/libr...v=vs.110).aspx
    http://www.noelshack.com/api.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public void uploadImage()
    {
                string api = "http://www.noelshack.com/api.php";
                string fileName = "file.jpg";
                WebClient wc = new WebClient();
                byte[] responseArray = wc.UploadFile(api, fileName);
                // Decode and display the response.
                MessageBox.Show(System.Text.Encoding.ASCII.GetString(responseArray), responseArray.Length.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);                           
    }
    J'ai fait casiment exactement le même code.

    Bonjour, bon bah voilà mon problème : je veux uploader une imagine sur noelshack. Alors je le fait avec la classe WebClient. L'image est bel et bien uploadée mais le serveur n'envoie pas de réponse ! Le tableau de byte[] est vide ! Vous pourriez m'aider? Merci infiniment.

  2. #2
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Bonjour Gleuh1,

    Il faut que tu passes par les WebRequests pour travailler sur les réponses :

    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
    46
    47
    48
    49
    50
    51
     
     public static string UploadFileEx(string uploadfile, string url)
    {
     
    	Uri uri = new Uri(url);
     
    	string boundary = "----------" + DateTime.Now.Ticks.ToString("x");
    	HttpWebRequest wreq = (HttpWebRequest)WebRequest.Create(uri);
     
    	wreq.ContentType = "multipart/form-data; boundary=" + boundary;
    	wreq.Method = "POST";
     
    	StringBuilder sb = new StringBuilder();
    	sb.Append("--");
    	sb.Append(boundary);
    	sb.Append("\r\n");
    	sb.Append("Content-Disposition: form-data; name=\"fichier\"; filename=\"" + Path.GetFileName(uploadfile) + "\"");
    	sb.Append("\r\n");
    	sb.Append("Content-Type: multipart/form-data");
    	sb.Append("\r\n");
    	sb.Append("\r\n");
     
    	string postHeader = sb.ToString();
    	byte[] postHeaderBytes = Encoding.UTF8.GetBytes(postHeader);
     
    	byte[] boundaryBytes = Encoding.ASCII.GetBytes("\r\n" + "--" + boundary + "\r\n");
     
    	FileStream fileStream = new FileStream(uploadfile, FileMode.Open, FileAccess.Read);
    	long length = postHeaderBytes.Length + fileStream.Length + boundaryBytes.Length;
    	wreq.ContentLength = length;
     
    	Stream requestStream = wreq.GetRequestStream();
     
    	requestStream.Write(postHeaderBytes, 0, postHeaderBytes.Length);
     
    	byte[] buffer = new Byte[Convert.ToUInt32(Math.Min(4096, Convert.ToInt32(fileStream.Length)))];
    	int bytesRead = 0;
        while ( (bytesRead = fileStream.Read(buffer, 0, buffer.Length)) != 0 )
            requestStream.Write(buffer, 0, bytesRead);
     
    	requestStream.Write(boundaryBytes, 0, boundaryBytes.Length);
    	WebResponse responce = wreq.GetResponse();
    	Stream s = responce.GetResponseStream();
    	StreamReader sr = new StreamReader(s);
    	string result = sr.ReadToEnd();
     
    	wreq.Close();
    	requestStream.Close();
     
    	return result;
    }
    Adapté de cette source


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MsgBox(UploadFileEx("C:\\CronsDows.png", "http://www.noelshack.com/api.php"))

    A+

Discussions similaires

  1. [Débutant] Pas de réponse après upload de fichier
    Par Gleuh1 dans le forum Développement Web avec .NET
    Réponses: 1
    Dernier message: 02/03/2014, 05h40
  2. [Débutant] Pas de réponse après upload de fichier
    Par Gleuh1 dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 02/03/2014, 05h37
  3. pas de fichier tmp après upload réussi
    Par gIch dans le forum Langage
    Réponses: 0
    Dernier message: 02/04/2010, 16h09
  4. Upload 1 fichier,seulement son nom et pas toute l'adresse
    Par nebil dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 12/04/2006, 15h05
  5. [Upload] Fichier interdit d'accès après upload
    Par Bisûnûrs dans le forum Langage
    Réponses: 2
    Dernier message: 31/03/2006, 00h33

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