Ejemplo n.º 1
0
        public IHttpResponse Request(IHttpRequest request)
        {
            var socket = _conn.Connect(request.Target, Timeout);
            var Tx     = new StreamWriter(socket);

            Tx.Write(request.RequestHead());
            Tx.Flush();

            if (request.DataStream != null)
            {
                if (request.DataLength > 0)
                {
                    ExpectedLengthStream.CopyBytesToLength(request.DataStream, socket, request.DataLength);
                }
                else
                {
                    ExpectedLengthStream.CopyBytesToTimeout(request.DataStream, socket);
                }
            }

            socket.Flush();

            return(_parser.Parse(socket));
        }