WP7 开发学习(2):在WP7中使用网络请求
来源:互联网 发布:wp8怎么下载软件 编辑:程序博客网 时间:2024/05/23 01:26
在上一篇中介绍到“合一微博”主要是调用腾讯、新浪的开放API实现的,实现这一切都是要请求网络资源的。下面简单介绍一下在WP7中怎样进行网络请求。
在wp7中对网络操作没有同步操作,都是异步的,这和Web有点不同。
方案一:使用HttpWebRequest和HttpWebResponse对象
其基本步骤如下:
1,实例化一个HttpWebRequest对象
2,开始请求
3,实例化一个HttpWebResponse对象来接受请求回来的对象
4,实例化一个流来处理上一步的response
5,对上一步的流进行处理,这就要你最想要的喽
6,记得把流关闭
7,关闭response响应
示例代码:
public void GetRequest()
{
//实例化一个HttpWebRequest对象
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.google.com.hk/");
//开始执行请求
request.BeginGetResponse((result) =>
{
//实例化一个HttpWebResponse对象来接受请求回来的数据
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(result);
//实例化一个流来处理response
using (System.IO.StreamReader sr = new StreamReader(response.GetResponseStream()))
{
//do something 对Stream 进行处理
//......
//......
//关闭response响应
response.Close();
}
}, request);
}
方案二:使用WebClient对象进行网络请求。
WebClient是请求远程资源的最简洁的方法,直接返回字符串。
它实际上是对HttpWebRequest的封装,隐藏了一些细节,而HttpWebRequest则可以让你了解请求的过程。
示例代码:
WebClient client = new WebClient();
client.DownloadStringAsync(new Uri("http://www.google.com.hk/"));
//匿名委托来处理返回来的字符串
client.DownloadStringCompleted += new DownloadStringCompletedEventHandler((sender, e) =>
{
//do something 对e.Result 进行处理。e. Result就是你要的东西。
//......
//......
});
}
方案三(推荐使用):使用第三方框架Hammock(吊床)
Hammock是个免费开源的框架,托管在github上 对网络操作进行了很好的封装,包含OAuth,不过只是OAuth1.0 。tweetsharp中也用到了它。
下载地址:https://github.com/danielcrenna/hammock
使用步骤如下:
1,实例化RestClient对象
2,设置该对象的一些属性,如Authority等
3,实例化一个RestRequest对象
4,添加RestRequest的请求参数
5,使用RestClient实例的BeginRequest方法进行异步请求
6,处理回调函数
实例代码:
RestClient client = new RestClient();
RestRequest request = new RestRequest();
request.Path = "http://www.google.com.hk/";
request.Method = WebMethod.Get;
request.Encoding = Encoding.UTF8;
client.BeginRequest(request, new RestCallback((req, response, userState) =>
{
//do something 对response.Content 进行处理。 response.Content就是你想要的东西
//......
//......
}));
}
原文地址:http://www.cnblogs.com/xumingxiang/archive/2012/03/20/2407755.html
- WP7 开发学习(2):在WP7中使用网络请求
- WP7中怎样进行网络请求
- Windows Phone 7(WP7)开发 在ViewModel中使用NavigationService
- Windows Phone 7(WP7)开发 在ViewModel中使用NavigationService
- 在win2008R2中安装WP7开发工具
- wp7中使用adduplex
- WP7控件开发学习笔记(一)
- Windows Phone 7(WP7)开发 网络操作(2) HttpWebRequest GET请求队列
- 学习WP7应用开发的笔记--在App和Page中使用资源集合的注意点1
- WP7 网络操作(2) HttpWebRequest GET请求队列
- WP7开发学习笔记----1
- WP7 开发
- 学习WP7
- wp7 中使用微软AD
- wp7
- WP7开发中使用自定义的弹出窗口
- WP7控件开发(一)
- WP7学习笔记(二)
- wp7全景控件
- VMware虚拟机中ubuntu系统内安装VMwareTools
- Windows Phone 7(WP7)开发 网络操作(2) HttpWebRequest GET请求队列
- IClassFactory = interface(IUnknown) ['{00000001-0000-0000-C000-000000000046}']
- 动态加载和静态加载及其编译步骤
- WP7 开发学习(2):在WP7中使用网络请求
- 模板泛型的常见应用
- 各种显示器的简单比较
- Java对集合的排序
- gcc 调试汇编 以及 对函数堆栈 的观察
- MIDL_INTERFACE("00000001-0000-0000-C000-000000000046") IClassFactory : public IUnknown
- Hadoop0.20更新笔记
- python第一天_欢迎来到python的世界
- 两个使用Page.ClientScript. 的方法 在后台写script脚本语言