Перевод машинного кода (кодировка)
Программа должна передать POST запрос серверу, после чего PHP скрипт отображает данные этого запроса.
Программа отправляет файл, предварительно убедившись, что он весит 40кб. Но в переменной $_POST[param]
доходит только 15кб. Данные передаются в UTF8 кодировке. Если передавать цифры [0..9], то они прекрасно доходят и по 100кб. Вот команда для отображения:
echo $_POST[param];
Вот исходник программы на C#:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(postUrl);
request.Method = "POST";
request.Credentials = CredentialCache.DefaultCredentials;
UTF8Encoding encoding = new UTF8Encoding();
var bytes = System.IO.File.ReadAllBytes(@"Data");
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
using (var newStream = request.GetRequestStream())
{
Console.Writeline(bytes.Length); //Размер ДО отправки (равен 40кб)
newStream.Write(bytes, 0, bytes.Length);
newStream.Close();
}
Console.Writeline(
new StreamReader(request.GetResponse().GetResponseStream(), Encoding.UTF8)
.ReadToEnd()
.Length);
//Размер ПОСЛЕ отправки (равен 15кб)