Esempio n. 1
0
        private bool CheckIfBodyAndAdd(WebServer.Server.Request request, string body, Stream sslStream)
        {
            Console.WriteLine("Before body check");
            bool timeout = false;
            body = body.Trim();
            Console.WriteLine("Content-Length: " + request.GetHeader("content-length") + " Body: " + body + "<- body end");
            if (request.GetHeader("content-length") != null && Convert.ToInt32(request.GetHeader("content-length")) > 0 && String.IsNullOrEmpty(body))
            {
                while (!Client.GetStream().DataAvailable) { if (Timer.ElapsedMilliseconds > TimeoutMS || !Client.Connected) { timeout = true; break; } }

                Console.WriteLine("Before read body");
                body = Encoding.UTF8.GetString(StreamToByteArray(((sslStream != null) ? (System.IO.Stream)sslStream : Client.GetStream()), Client.Available));
            }

            request.Body = body;

            return !timeout;
        }