这是开始网络请求的方法,网络返回在ResponseCallback处理:
private void DoHttpWebRequest()
{
string url = "http://www.cnblogs.com/linzheng";
var request = HttpWebRequest.Create(url);//创建WebRequest类
var result = (IAsyncResult)request.BeginGetResponse(ResponseCallback, request);
}
这里处理网络返回流:
private void ResponseCallback(IAsyncResult result)
{ // 前4行是通用的,在大括号里面才是对流的操作
HttpWebRequest request = (HttpWebRequest)result.AsyncState;//获取异步操作返回的的信息
WebResponse response = request.EndGetResponse(result);//结束对 Internet 资源的异步请求
using (Stream stream = response.GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
string contents = reader.ReadToEnd();
int begin = contents.ToString().IndexOf("<title>");
int end = contents.ToString().IndexOf("</title>");
string note = contents.Substring(contents.ToString().IndexOf("摘要"), 300);
//通过呼叫UI Thread来改变页面的显示
Dispatcher.BeginInvoke(() => { httpWebRequestTextBlock.Text = contents.ToString().Substring(begin + 7, end - begin - 7); textBox2.Text = note; });
}
}
ResponseCallback这个回调是在后台线程调用的,想要更新主线程ui就要使用 Dispatcher.BeginInvoke(() => {}
分享到:
相关推荐
C#实现通过HttpWebRequest发送POST请求实现网站自动登陆
使用 HttpWebRequest发送自定义POST请求
C#(也称Csharp)在多线程下并发执行HTTP请求的实现,采用C#封装HttpWebRequest类开发的多线程并发采集程序源码文档,文档中详细说明了HttpWebRequest并发HTTP请求实现网站采集的方法,经过测试同时并发1000+不是问题...
C# asp.net http HttpWebRequest模拟浏览器请求下载文件到本地
httpwebrequest调用webservice返回数据
模拟请求,基于HttpWebRequest封装好的一个类,自动记下和发送Cookie,你只管调用方法就行了,很实用
HttpWebRequest详解HttpWebRequest详解HttpWebRequest详解
使用HttpWebRequest可以让开发者控制请求/响应流程的各个方面,如 timeouts, cookies, headers, protocols。另一个好处是HttpWebRequest类不会阻塞UI线程。例如,当您从响应很慢的API服务器下载大文件时,您的应用...
C#中HttpWebRequest使用介绍 GET HTTP HTTPS 请求
httpwebrequest 封装类
本文实例讲述了C#基于HttpWebRequest实现发送HTTP请求的方法。分享给大家供大家参考,具体如下: 调用第三方API的时候要用到HttpWebRequest类发送HTTP请求,网上查阅一番后大致了解了该类的用法,现记录如下。 首先...
1.这是一个用HttpWebRequest类构建完整Http多部请求上传文件的示例 2.上传地址是金山文档预览的地址,所以,只要上传的是word、pdf、excel一类的文档,可以通过返回的地址直接在线预览,是一种偷懒的文档在线浏览...
WebRequest发起Http_Post请求模拟登陆并cookie处理示例HTTP协议详解
window phone WebClient和HttpWebRequest 并解决gb2312乱码问题
一个很实用的例子,注意要用OFFICE 2007
C# 多线程基本于httpwebrequest实现的下载功能 每个线程均可以通过事件追踪情况
本文将讲述如何采用HttpWebRequest方式每次读取固定大小数据片段(如4KB)发送至服务器,为大文件上传提供解决方案,本文还将详细讲述如何将“文件上传”功能做为用户自定义控件,实现模块重用。
本示例使用C#构造SOAP信息,通过HttpWebRequest调用java编写的带有Windows身份验证的WebService,代码中详细注释了每行代码的功能与作用; 对应文章:http://blog.csdn.net/cgs_______/article/details/77894599
使用HttpWebRequest访问网页