如何使用WebClient从网页获取异步发布数据?

时间:2015-10-13 22:32:26

标签: c# webclient

我正在使用WebClient阅读的网站在加载后返回一个JSON对象。我可以按网站上的按钮启动异步回发,并返回JSON对象:

enter image description here

当我尝试发布与JSON数据相同的URL时,我获得完整的回发并返回整个页面,而不仅仅是JSON数据。

我的代码就是这样:

  using (WebClient client = new WebClient()) {
    System.Collections.Specialized.NameValueCollection reqparm = new System.Collections.Specialized.NameValueCollection();
    reqparm.Add("limit", "1000");
    byte[] responsebytes = client.UploadValues("https://somewebsite.org/doe/search/resultData", "POST", reqparm);
    string responsebody = Encoding.UTF8.GetString(responsebytes);
  }

1 个答案:

答案 0 :(得分:2)

回发很可能是使用包含cookie的正确标头发送的,以帮助服务器识别它是回发的事实。您的简单WebClient代码不遵循此方案,因此服务器会发送整页响应。