J'utilise la classe WebRequest dans les données .net et POST sur un serveur qui répond avec une réponse.Problème WebRequest, réponse avant le corps de la demande
La chose la plus étrange est que ça marche quand j'ai commencé à analyser le trafic de mon réseau, mais sans fiddler ce n'est pas le cas. J'ai donc commencé à analyser le paquet qui est envoyé depuis et vers mon ordinateur avec WireShark. Avec dans ce programme, il est simple de suivre le flux TCP. Donc, quand j'ai eu un violoniste, je peux voir que l'en-tête/corps de requête correct est envoyé, et obtient l'en-tête/corps de réponse. La partie étrange est quand je n'utilise pas fiddler l'en-tête de demande est envoyé, alors j'ai l'en-tête/corps de réponse, et finalement le corps de demande à la fin du flux TCP.
Voici mon code que j'ai approfondirai:
string lcUrl = "http://XX.XX.XXX.XX";
// *** Establish the request
HttpWebRequest loHttp = (HttpWebRequest)WebRequest.Create(lcUrl);
string lcPostData = testdata;
loHttp.Method = "POST";
byte [] lbPostBuffer = System.Text.Encoding.GetEncoding(1252).GetBytes(lcPostData);
loHttp.ContentLength = lbPostBuffer.Length;
loHttp.Credentials = CredentialCache.DefaultCredentials;
//loHttp.SendChunked = true;
loHttp.ServicePoint.Expect100Continue = false;
Stream loPostData = loHttp.GetRequestStream();
loPostData.Write(lbPostBuffer, 0, lbPostBuffer.Length);
loPostData.Close();
HttpWebResponse loWebResponse = (HttpWebResponse)loHttp.GetResponse();
Encoding enc = System.Text.Encoding.GetEncoding(1252);
StreamReader loResponseStream = new StreamReader(loWebResponse.GetResponseStream(), enc);
string lcHtml = loResponseStream.ReadToEnd();
loWebResponse.Close();
loResponseStream.Close();
peut-être cela aide: http://stackoverflow.com/questions/18126941/c-sharp-webrequest-post-and-getresponse – xameeramir