HttpClientクラスを使ってWeb APIから情報を取得
webから情報を取得するサンプルを見ていきましょう
サンプルコード
このコードは、HttpClientクラスを使ってWeb APIから情報を取得し、コンソールに出力するものです。
using System;
using System.Net.Http;
using System.Threading.Tasks;
namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // 1. HttpClientクラスのインスタンス(client)を生成
            HttpClient client = new HttpClient();
            // 2. URLを変数urlに代入
            string url = "https://example.com/weather";
            // 3. HttpClientのGetStringAsyncメソッドを呼び出して、結果を取得
            Task<string> response = client.GetStringAsync(url);
            // 4. 結果をコンソールに出力
            Console.WriteLine(response.Result);
            Console.ReadLine();
        }
    }
}
解説
- 最初にHttpClientクラスのインスタンス(client)を生成します。これにより、HTTP通信を行うためのクライアントを生成できます。
 - 次に、情報を取得するWeb APIのURLを変数urlに代入します。ここでは「https://example.com/weather」というURLを想定しています。
 - GetStringAsyncメソッドを呼び出して、Web APIから天気情報を取得します。このメソッドは非同期で動作するため、Task<string>型の変数responseに結果が格納されます。
 - 最後に、Task<string>型の変数responseから結果を取り出して、コンソールに出力します。Resultプロパティを使って、Web APIから取得した天気情報を文字列として取り出します。
 
このように、HttpClientクラスを使うことで、Web APIからデータを取得することができます。
非同期で情報を取得とは
GetStringAsyncメソッドは非同期で動作します。非同期処理とは、主に処理の中断を許すことで、他の処理を同時に実行することができるプログラムのことです。このコードでは、Web APIからデータを取得するためのGetStringAsyncメソッドを呼び出していますが、このメソッドは別のタスクとして実行されます。つまり、Web APIからのデータ取得と、他の処理を同時に実行することができます。
非同期処理は、長時間かかる処理を同期で実行すると、アプリケーションがフリーズするなどの問題が発生することを回避するために使われます。非同期処理を使うことで、アプリケーションの処理速度が向上し、ユーザーの体験が向上することが期待されます。
訪問数 278 回, 今日の訪問数 3回






ディスカッション
コメント一覧
まだ、コメントがありません