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 http://localhost:15148/page.aspx
Headers:用户代理:Fiddler
传输编码:分块
主持人:somesite.com:15148
Body兔子兔子兔子兔子兔子。感谢您的光临,这非常有用!
我上面的身体阅读器将返回一个零长度字节数组...蹩脚...
有谁知道如何在 IIS 和 ASP.NET 开发服务器 (cassini) 上启用分块编码?
I found 这个脚本 http://support.microsoft.com/default.aspx?scid=kb;en-us;278998对于 IIS 但它不起作用。