2009-07-13 8 views
6

Penso che sto diventando un po 'pazzo, quando provo questo sul mio webserver locale, funziona bene quando esco sul sito web dal vivo, restituisce una stringa vuota invece del dati che mi aspettoWebClient.UploadData uso corretto per la richiesta di post

non sono così familiare con C#, quindi volevo solo controllare che sto facendo le cose per bene. i dati sono semplicemente testo 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); 

risposta

12

Dipende cosa si sta cercando di fare ... Non sono sicuro, per esempio, il motivo per cui si sono dati url-codifica nel corpo. Un modo più semplice per inviare coppie chiave/valore è con UploadValues;

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

non ha risolto il problema, ma è un modo più bello di codificare la soluzione. Credo di averlo codificato come ho fatto a causa della poca familiarità con il C# api – bumperbox