HttpWebRequest/HttpResponse: Wie zum senden von Daten in der Antwort?
Ich habe einen client und einen server.
Auf der client-Seite habe ich:
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();
Auf der server-Seite habe ich:
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();
}
Erhält der client die Antwort mit der richtigen StatusCode
. Obwohl, wenn ich (int)response.ContentLength;
auf dem client bekomme ich 0. Ich kann nicht Lesen, den string "Hallo", nachdem ich die Antwort erhalten (client-Seite).
Ich weiß, dies ist ein Alter thread, Aber vielleicht hilft es jemandem. Versuchen Sie stackoverflow.com/questions/4088625/...
InformationsquelleAutor user252816 | 2010-02-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vielleicht die Einstellung der Inhalte geben Sie vor dem eigentlichen schreiben oder Spülung der stream würde helfen.
InformationsquelleAutor m0sa
Du nicht ContentLength auf dem server. Vielleicht würde helfen?
response.ContentLength = n;
funktioniert nicht? Wenn nicht, dann bin ich falschContentLength
dein problem.InformationsquelleAutor John Saunders