Клиент J2ME отправляет HTTP-запросы POST с частичной кодировкой передачи.
Когда ASP.NET (как в IIS6, так и в WebDev.exe.server) пытается прочитать запрос, он устанавливает Content-Length на 0. Я думаю, это нормально, потому что Content-length неизвестен при загрузке запроса.
Однако, когда я читаю Request.InputStream до конца, он возвращает 0.
Вот код, который я использую для чтения входного потока.
using (var reader = new StreamReader(httpRequestBodyStream, BodyTextEncoding)) {
string readString = reader.ReadToEnd();
Console.WriteLine("CharSize:" + readString.Length);
return BodyTextEncoding.GetBytes(readString);
}
Я могу смоделировать поведение клиента с помощью Fiddler, например
URL
http://localhost:15148/page.aspx
Заголовки:
Пользователь-агент: Fiddler
Передача-Кодировка: Chunked
Ведущий: somesite.com:15148
Body
кролики кролики кролики кролики. спасибо, что пришли, это было очень полезно!
Мой читатель тела сверху вернет байтовый массив нулевой длины ... lame ...
Кто-нибудь знает, как включить кодирование по частям на IIS и ASP.NET Development Server (cassini)?
Я нашел этот скрипт для IIS, но он не работает.