Frage

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 Serverseite 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();
}

Der Client empfängt die Antwort mit dem richtigen StatusCode. Obwohl, wenn ich (int)response.ContentLength; auf dem Client bekomme ich 0. ich die Zeichenfolge nicht lesen kann „Hallo“, nachdem ich die Antwort (Client-Seite) erhalten.

War es hilfreich?

Lösung

Vielleicht den Inhaltstyp vor dem eigentlichen Schreib Einstellung oder Spülung der Strom helfen würde.

Andere Tipps

Sie haben nicht ContentLength auf dem Server festgelegt. das würde vielleicht helfen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top