Disabling HTTP Post String

I am using the following code to create an HTTP message. This works great in most cases, but it cuts off my lines at a specific length of about 4300 line characters. How can I get around this problem? I have a suspicion that this is due to all data that is not published and not trimmed at the time of publication. How can I get around this problem?

ASCIIEncoding encoding = new ASCIIEncoding();
                // Create a request using a URL that can receive a post. 
                WebRequest request = WebRequest.Create("<URL>");
                // Set the Method property of the request to POST.
                request.Method = "POST";
                // Create POST data and convert it to a byte array.
                string postData = "json=" + json;
                //string postData = "json=blah";
                byte[] byteArray = Encoding.UTF8.GetBytes(postData);
                // Set the ContentType property of the WebRequest.
                request.ContentType = "application/x-www-form-urlencoded";
                // Set the ContentLength property of the WebRequest.
                request.ContentLength = byteArray.Length;
                // Get the request stream.
                Stream dataStream = request.GetRequestStream();
                // Write the data to the request stream.
                dataStream.Write(byteArray, 0, byteArray.Length);
                // Close the Stream object.
                dataStream.Close();
                // Get the response.
                WebResponse response = request.GetResponse();
                // Display the status.
                //Console.WriteLine(((HttpWebResponse)response).StatusDescription);
                // Get the stream containing content returned by the server.
                dataStream = response.GetResponseStream();
                // Open the stream using a StreamReader for easy access.
                StreamReader reader = new StreamReader(dataStream);
                // Read the content.
                retVal = reader.ReadToEnd();

                // Clean up the streams.
                reader.Close();
                dataStream.Close();
                response.Close();
+3
source share
1 answer

That Uri.EscapeDataString (json) did the trick.

+2
source

All Articles