有没有办法在响应完成之前访问API响应数据?

时间:2019-06-01 06:46:51

标签: rest api soap

某些API没有实现分页。有没有一种方法可以在API调用完成之前访问部分响应并访问可用对象?例如,如果响应为json并且已经接收到的数据为:

{"objectarray": [
   {"Name": "test1"},
   {"Name": "test2"},
   {"Name":

前两个元素已经加载并且可以解析。为什么要等待整个响应完成? 我猜这种方法存在一些问题。请分享想法。

1 个答案:

答案 0 :(得分:0)

我写了一个代码样本,该代码样本可以满足我的需求。有更好的方法吗?请分享想法。

     WebClient client = new WebClient();
     Stream str = client.OpenRead(<url>);
     using (JsonTextReader reader = new JsonTextReader(new StreamReader(str)))
     {
        while (reader.Read())
        {
           if (reader.TokenType == JsonToken.StartArray)
           {
              while (reader.Read())
              {
                 if (reader.TokenType == JsonToken.StartObject)
                 {
                     var jsonObject = JObject.Load(reader);
                     var deserialized = jsonObject.ToObject<T>();
                 }
              }
           }
        }
     }