如何在ASMX Web服务中接收JSON数据

问题描述

我正试图编写一个ASMX Web服务来接收来自其他位置的JSON数据块(这意味着我无法控制数据格式-已记录且一致,但在我的控制范围内)。作为测试,我创建了一个简单的网页,该网页通过AJAX请求发送相同的数据。数据肯定是作为我的POST请求的有效负载附加的: Picture of chrome devtools showing payload

但是当我尝试在ASMX Web服务中接收该数据时,我得到一个空字符串:

  [WebMethod]
  public string UpdateProjectImage() 
  {
    using (var sr = new System.IO.StreamReader(HttpContext.Current.Request.InputStream))
    {
      string json = sr.ReadToEnd(); // this comes out as an empty string!
      return json;
    }
  }

请注意,这是使用Win2008R2上运行的VS 2012和IIS 7.5构建的,我无法更改技术堆栈。

streamreader技术应该起作用,因为我从另一个起作用的Web服务复制了它-但是在这种情况下它不起作用(它只是给我一个空字符串),我也不知道为什么。这可能是一些奇怪的配置设置,但我只是不知道它可能是什么设置。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)