J'ai un client et un serveur.HttpWebRequest/HttpResponse: Comment envoyer des données dans la réponse?
Du côté client J'ai:
HttpWebRequest request =
(HttpWebRequest)WebRequest.Create("http://localhost/fa/Default.aspx");
request.Method = "POST";
byte[] data = Encoding.ASCII.GetBytes(GetSAMLRequestB64());
request.ContentType = "text/xml";
request.ContentLength = data.Length;
Stream stream = request.GetRequestStream();
stream.Write(data, 0, data.Length);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
Du côté du serveur, j'ai:
public void ProcessRequest(HttpContext httpContext)
{
HttpResponse response = httpContext.Response;
response.Clear();
response.BufferOutput = true;
response.StatusCode = 200; // HttpStatusCode.OK;
response.Write("Hello");
response.ContentType = "text/xml";
response.End();
}
Le client reçoit la réponse à la StatusCode
correcte. Bien que, si je fais (int)response.ContentLength;
sur le client, je reçois 0. Je ne peux pas lire la chaîne "Bonjour" après avoir reçu la réponse (côté client).
Je sais que c'est un vieux fil, mais peut aider quelqu'un. Essayez http://stackoverflow.com/questions/4088625/net-simplest-way-to-send-post-with-data-and-read-response/19448979#19448979 – Murali