在请求下载资源时,如何以异步方式从HttpWebRequest读取接收的数据?
我想下载一个文件并立即开始处理收到的字节。我已经找到了很多例子如何异步调用HttpWebRequest,但是直到下载完成才读取数据:
HttpWebRequest webRequest;
void StartWebRequest()
{
webRequest.BeginGetResponse(new AsyncCallback(FinishWebRequest), null);
}
void FinishWebRequest(IAsyncResult result)
{
webRequest.EndGetResponse(result);
}
答案 0 :(得分:2)
在
行webRequest.EndGetResponse(result);
你还没有读过任何回复正文。 EndGetResponse返回一个HttpWebResponse,您必须在其上调用GetResponseStream。该流包含实际的响应主体,您可以使用标准流方法快速或慢速地读取它。