348 votes

Comment faire pour publier des données sur l’URL spécifique à l’aide de WebClient en c#

J’ai besoin d’utiliser « HTTP Post » avec WebClient pour écrire des données vers une URL spécifique, j’ai.

Maintenant, je sais que cela peut être accompli avec WebRequest, mais pour certaines raisons que j’ai souhaitez plutôt utiliser WebClient. est-ce possible ? Si donc s’il vous plaît pouvez-vous me montrer quelques exemples ou vous pouvez m’indiquer la bonne direction...

399voto

Robin Van Persi Points 5197

Je viens de trouver la solution et oui, c’était plus facile que je pensais  :)

alors voici la solution :

Il fonctionne comme charme  :)

379voto

Endy Tjahjono Points 4458

Il est construit dans une méthode appelée UploadValues pouvez envoyer HTTP POST (ou n’importe quel genre de méthodes HTTP) et elle gère la construction de corps de la requête (concaténation des paramètres avec « & » et d’échapper à des caractères de codage url) dans le format de données de manière appropriée :

43voto

Pranay Rana Points 69934

À l’aide de ou vous pouvez publier des données sur le serveur facilement. Je vous montrerai un exemple d’utilisation UploadData, puisque UploadString est utilisé de la même manière que DownloadString.

plus : http://www.daveamenta.com/2008-05/c-webclient-usage/

23voto

TeJ Points 95
//Making a POST request using WebClient.


Function()
{    
  WebClient wc = new WebClient();

  var URI = new Uri("http://your_uri_goes_here");

  //If any encoding is needed.

  wc.Headers["Content-Type"] = "application/x-www-form-urlencoded";

  //Or any other encoding type.

  //If any key needed

  wc.Headers["KEY"] = "Your_Key_Goes_Here";

  wc.UploadStringCompleted += new UploadStringCompletedEventHandler(wc_UploadStringCompleted);

  wc.UploadStringAsync(URI,"POST","Data_To_Be_sent");    
}


void wc__UploadStringCompleted(object sender, UploadStringCompletedEventArgs e)
{  

  try            
  {          
     MessageBox.Show(e.Result); 
     //e.result fetches you the response against your POST request.         

  }

  catch(Exception exc)         
  {             
     MessageBox.Show(exc.ToString());            
  }

}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X