C# 当显示有效正文时,HTTP POST在IIS 8.5上的Request.Form.Count==0

C# 当显示有效正文时,HTTP POST在IIS 8.5上的Request.Form.Count==0,c#,asp.net,.net,iis-8.5,C#,Asp.net,.net,Iis 8.5,我们有一个简单的WCF REST服务,用于接收HTTP POST请求。我们通过检查request.Form.Count>0来验证请求中是否包含一些键值对这在IIS 6/IIS 7 Server 2003/2008上运行良好。但是,在IIS 8.5 Server 2012上,请求验证失败,因为request.Form.Count为零 请求的内容类型标头为application/x-www-form-urlencoded 在IIS 8.5之前,同一请求的同一源代码如何工作,但在IIS 8.5上却不能

我们有一个简单的WCF REST服务,用于接收HTTP POST请求。我们通过检查request.Form.Count>0来验证请求中是否包含一些键值对这在IIS 6/IIS 7 Server 2003/2008上运行良好。但是,在IIS 8.5 Server 2012上,请求验证失败,因为request.Form.Count为零

请求的内容类型标头为application/x-www-form-urlencoded

在IIS 8.5之前,同一请求的同一源代码如何工作,但在IIS 8.5上却不能工作


值得一提的是,2012服务器是无头的,即没有运行的Explorer外壳。此外,我们可以看到请求的主体确实到达了服务器。这几乎就像处理管道中的某个东西正在移除它。

解决方案是和。不要使用HttpContext.Current.Request.Form。使用隐式流。

您使用哪种内容类型标题来获取键值内容?更新了问题以包括内容类型。