Vol4まではファイル(主に画像)の操作を紹介してきましたが、今回から数回Webリクエストを投げてサーバーからデータを取ってくる方法について紹介していきたい。
// 外部通信先URL String uri_str = "http://hoge.com"; System.Uri uri = new Uri(uri_str); HttpWebRequest Request = (HttpWebRequest)WebRequest.Create(uri); Request.Method = "POST"; // ここでもawait大活躍、非同期処理をあたかも同期処理のように記述できる HttpWebResponse Response = (HttpWebResponse)await Request.GetResponseAsync(); StreamReader ResponseDataStream = new StreamReader(Response.GetResponseStream()); var result = ResponseDataStream.ReadToEnd(); // 取得したデータがXMLでくる想定 // 取得したデータをLINQでごにょごにょする var doc = System.Xml.Linq.XElement.Parse(result);
上記はhoge.comにアクセスしてXMLデータを取ってくるコードです。
var resultに通信結果が入ります。
これまで別メソッドやラムダ式で書いていた通信結果取得部分がawaitのおかげですっきり記述できています。
Please give us your valuable comment