.NET Compact Framework üzerinde eşzamansız bir HTTP (S) POST işlemi yapmaya çalışıyorum ve çalışmayı başaramıyorum..NET Compact Framework'de POST parametreleriyle eşzamansız WebRequest
private void sendRequest(string url, string method, string postdata) {
WebRequest rqst = HttpWebRequest.Create(url);
CredentialCache creds = new CredentialCache();
creds.Add(new Uri(url), "Basic", new NetworkCredential(this.Uname, this.Pwd));
rqst.Credentials = creds;
rqst.Method = method;
if (!String.IsNullOrEmpty(postdata)) {
rqst.ContentType = "application/xml";
byte[] byteData = UTF8Encoding.UTF8.GetBytes(postdata);
rqst.ContentLength = byteData.Length;
using (Stream postStream = rqst.GetRequestStream()) {
postStream.Write(byteData, 0, byteData.Length);
postStream.Close();
}
}
((HttpWebRequest)rqst).KeepAlive = false;
rqst.BeginGetResponse(DataLoadedCB, rqst);
}
private void DataLoadedCB(IAsyncResult result) {
WebRequest rqst = ((WebRequest)(((BCRqst)result.AsyncState).rqst));
WebResponse rsps = rqst.EndGetResponse(result);
/* ETC...*/
}
... ama nedense ben DataLoadedCB ikinci satırda bir WebException olsun: Burada
ben yapıyorum"Bu istek kimlik doğrulaması veya ilişkin verilerin önbelleğe alınması gerekmektedir yönlendirme başarılı olmak.
Basit bir HTTP GET yaptığımda tam olarak aynı kod mükemmel çalışır, ancak bazı POST param'larında attığımda, her şey başarısız olur.
Herhangi bir fikrin var mı?
Bunu yakın ** ((HttpWebRequest) rqst) eklemek demek tahmin .KeepAlive = false; ** :) –