异步的HTTP POST与GET请求例子
来源:互联网 发布:长城显示器怎么样 知乎 编辑:程序博客网 时间:2024/06/01 10:48
Get方法:
private void HttpGet()
{
WebClient wc = new WebClient();
Uri uri = new Uri("http://localhost:3881/Financial.ashx?ticker=NTES&startdate=1-1-2009&enddate=9-2-2010", UriKind.RelativeOrAbsolute);
wc.OpenReadCompleted += new OpenReadCompletedEventHandler(wc_OpenReadCompleted);
wc.OpenReadAsync(uri);
}
private void wc_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
StreamReader read = new StreamReader(e.Result);
string strXML = read.ReadToEnd();
XDocument xmlDoc = XDocument.Parse(strXML);
IEnumerable<TimeSeriesData> myTimeSeries = from item in xmlDoc.Descendants("TimeSeries")
select new TimeSeriesData()
{
open = Convert.ToDouble(item.Element("Open").Value),
close = Convert.ToDouble(item.Element("Close").Value),
high = Convert.ToDouble(item.Element("High").Value),
low = Convert.ToDouble(item.Element("Low").Value),
adjclose = Convert.ToDouble(item.Element("AdjClose").Value),
volume = Convert.ToDouble(item.Element("Volume").Value),
date = Convert.ToDateTime(item.Element("Date").Value)
};
TimeSeries.ItemsSource = myTimeSeries;
}
Post方法:
private void HttpPost()
{
Uri uri = new Uri("http://localhost:3881/Financial.ashx");
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(uri);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.BeginGetRequestStream(new AsyncCallback(RequestProceed),request);
}
private void RequestProceed(IAsyncResult asyncResult)
{
HttpWebRequest request = (HttpWebRequest)asyncResult.AsyncState;
StreamWriter postDataWriter = new StreamWriter(request.EndGetRequestStream(asyncResult));
postDataWriter.Write("ticker=NTES");
postDataWriter.Write("&startdate=1-1-2009");
postDataWriter.Write("&enddate=9-2-2010");
postDataWriter.Close();
request.BeginGetResponse(new AsyncCallback(ResponesProceed),request);
}
private void ResponesProceed(IAsyncResult asyncResult)
{
WebRequest request = (HttpWebRequest)asyncResult.AsyncState;
HttpWebResponse response=(HttpWebResponse)request.EndGetResponse(asyncResult);
StreamReader responseReader = new StreamReader(response.GetResponseStream());
string responseString = responseReader.ReadToEnd();
XDocument xmlDoc = XDocument.Parse(responseString);
IEnumerable<TimeSeriesData> myTimeSeries = from item in xmlDoc.Descendants("TimeSeries")
select new TimeSeriesData()
{
open = Convert.ToDouble(item.Element("Open").Value),
close = Convert.ToDouble(item.Element("Close").Value),
high = Convert.ToDouble(item.Element("High").Value),
low = Convert.ToDouble(item.Element("Low").Value),
adjclose = Convert.ToDouble(item.Element("AdjClose").Value),
volume = Convert.ToDouble(item.Element("Volume").Value),
date = Convert.ToDateTime(item.Element("Date").Value)
};
Dispatcher.BeginInvoke(()=>TimeSeries.ItemsSource=myTimeSeries);
}
- 异步的HTTP POST与GET请求例子
- 异步的HTTP POST与GET请求例子
- $.get()/$.post()/$ajax() 异步请求的例子
- HTTP请求:GET与POST的区别
- HTTP请求GET与POST的区别
- http请求get与post的区别
- iOS上的http请求:get、post以及同步、异步
- iOS上的http请求:get、post以及同步、异步
- iOS原生Http请求,get post 异步
- Http方法:Get请求与Post请求的区别
- Http方法:Get请求与Post请求的区别
- Http方法:Get请求与Post请求的区别
- Http方法:Get请求与Post请求的区别
- Http--Get请求与Post请求的区别
- 【补遗】Http方法:Get请求与Post请求的区别
- HTTP中POST请求与GET请求的区别
- Http的GET请求与POST请求调用接口
- Http的post ,get请求
- xml提前数据
- iOS 打包应用程序
- 关于onbeforeunload和onunload两个事件
- Tomacat6.0 配置開啟gzip壓縮,以及測試是否成功的類
- VC++中字符串转换CString, char*, BSTR, 多字节,unicode字符集转换的问题
- 异步的HTTP POST与GET请求例子
- 基于JQuery的实现图片轮播效果(焦点图)
- The Django Book【第4章 Django模板系统】
- Apache Commons Lang包工具类的介绍-更新中~
- 代码大全的笔记
- Spring动态加载Hibernate映射文件
- 分布式对象存储系统在openstack中的应用研究
- cookies
- jar命令的使用以及hadoop的job内存溢出的解决