HUSKING - kotteri

技術系Note

【C#】HttpClientを使ってみる(POST)

HttpClientを使用してJSON形式のデータをPOSTしてみる

リクエストメソッド作成

using System.Net.Http; // ←追加

private static HttpClient client = new HttpClient();

private async Task<string> sendRequest(string url, string json)
{
      // メソッドにPOSTを指定
      HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, url);
      // 今回はJSONをPOSTしてみる
      request.Content = new StringContent(json, Encoding.UTF8, "application/json");
      // リクエストを送信し、その結果を取得
      var response = await client.SendAsync(request);
      // 取得した結果をstring形式で返す
      return await response.Content.ReadAsStringAsync();
}

作成したリクエストメソッドの使用例

static void Main(string[] args)
{
   string url = "http://******"; // post先
   string json = "{\"age\":\"44歳\",\"name\":\"大泉 洋\"}"; // 送信するJSON

  // リクエスト送信して、タスクの返りを待つ
   sendRequest(url, json).ContinueWith(
       (task) =>
       {
           // レスポンスを取得
           string responseData = task.Result;
       });
}