2009-07-13 5 views
6

Je pense que je vais un peu fou, quand je tester cela sur mon serveur web local, ça fonctionne bien quand je sors sur le site en direct, il renvoie une chaîne vide au lieu de la données que je m'attendsWebClient.UploadData utilisation correcte pour la demande de poste

Je ne suis pas familier avec C#, donc je voulais juste vérifier que je fais les choses correctement. les données sont tout simplement texte ascii

wc = new WebClient(); 
wc.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); 
response = wc.UploadData(this.urlUpdate, Encoding.ASCII.GetBytes("data=" + HttpUtility.UrlEncode(buf.ToString()))); 

s = Encoding.ASCII.GetString(response); 

Répondre

12

Cela dépend vraiment de ce que vous essayez de faire ... Je ne sais pas, par exemple, pourquoi vous êtes données de codage URL dans le corps. Un moyen plus simple de publier des paires clé/valeur est avec UploadValues;

NameValueCollection inputs = new NameValueCollection(); 
string value = ... 
inputs.Add("data", value); 
webClient.UploadValues(address, inputs); 
+0

il n'a pas résolu le problème, mais est une meilleure façon de coder la solution. Je suppose que je l'ai codé comme je l'ai fait en raison de la non-familiarité avec le C# api – bumperbox

Questions connexes