我得到了代码,它发送 GET 请求并在流中接收答案。我用流式阅读器读取流以结束。这是代码:
HttpWebRequest requestGet = (HttpWebRequest)WebRequest.Create(url);
requestGet.Method = "GET";
requestGet.Timeout = 5000;
HttpWebResponse responseGet = (HttpWebResponse)requestGet.GetResponse();
StreamReader reader = new StreamReader(responseGet.GetResponseStream());
StringBuilder output = new StringBuilder();
output.Append(reader.ReadToEnd());
responseGet.Close();
但我不喜欢那个程序等到所有数据都收到后才开始处理响应。如果我可以这样做(伪代码),那就太好了:
//here sending GET request
do
{
response.append(streamPart recieved);
//here work with response
} while (stream not ended)
我尝试了 streamReader.Read(char[], int32_1, int32_2),但我无法指定 int32_2,因为我不知道我收到了多少个符号。如果我使用 ReadToEnd - 它会等待所有响应加载。