我有一个使用 HttpHandler 类运行的 Web 服务。在这个类中,我检查表单/查询字符串参数的请求流。在某些情况下,这些参数似乎没有通过。经过一番挖掘,我遇到了一些我不太了解的行为。见下文:
// 请求包含'a=1&b=2&c=3' // TEST ONLY:读取整个请求 字符串内容; 使用 (StreamReader sr = new StreamReader(context.Request.InputStream)) { 内容 = sr.ReadToEnd(); } // 这里的 'contents' 通常是正确的 - 包含 'a=1&b=2&c=3'。有时它是空的。 字符串 a = context.Request["a"]; // 这里,a = null,不管上面的'contents'变量是否正确
谁能向我解释为什么会发生这种情况?如果有任何区别,我正在使用 .NET WebClient 和 UploadDataAsync 在客户端上执行请求。
如果您需要更多信息,请告诉我。