winformでweb APIを呼び出す方法は何ですか?

WinFormアプリケーションでWeb APIを呼び出す場合、一般的にはHttpClientクラスを使用してHTTPリクエストを送信し、レスポンスを受け取ることができます。以下は簡単なコード例です:

using System;
using System.Net.Http;
using System.Threading.Tasks;

namespace WinFormWebApiExample
{
    public partial class MainForm : Form
    {
        private HttpClient httpClient;

        public MainForm()
        {
            InitializeComponent();

            // 初始化HttpClient
            httpClient = new HttpClient();
            httpClient.BaseAddress = new Uri("http://api.example.com");  // 设置Web接口的基础地址
        }

        private async void btnGetData_Click(object sender, EventArgs e)
        {
            try
            {
                // 发送GET请求,并获取响应内容
                HttpResponseMessage response = await httpClient.GetAsync("/api/data");
                response.EnsureSuccessStatusCode();
                string responseBody = await response.Content.ReadAsStringAsync();

                // 处理响应内容
                // ...

                // 显示结果
                tbResult.Text = responseBody;
            }
            catch (Exception ex)
            {
                tbResult.Text = "Error: " + ex.Message;
            }
        }

        private async void btnSendData_Click(object sender, EventArgs e)
        {
            try
            {
                // 构造要发送的数据
                var data = new { Name = tbName.Text, Age = int.Parse(tbAge.Text) };

                // 发送POST请求,并获取响应内容
                HttpResponseMessage response = await httpClient.PostAsJsonAsync("/api/data", data);
                response.EnsureSuccessStatusCode();
                string responseBody = await response.Content.ReadAsStringAsync();

                // 处理响应内容
                // ...

                // 显示结果
                tbResult.Text = responseBody;
            }
            catch (Exception ex)
            {
                tbResult.Text = "Error: " + ex.Message;
            }
        }
    }
}

上記の例では、MainFormはWinFormの主要なウィンドウクラスであり、データを取得するための2つのボタンとデータを送信するための2つのボタンがあります。コンストラクタ内でHttpClientを初期化し、Webインターフェースの基本アドレスを設定します。ボタンをクリックすると、HttpClientを使用して対応するHTTPリクエストを送信し、応答内容を処理します。System.Net.HttpおよびSystem.Threading.Tasks名前空間をインポートする必要があります。

bannerAds