温馨提示×

C#调用WebAPI如何实现异步调用

c#
小樊
110
2024-07-10 00:24:20
栏目: 编程语言

在C#中调用WebAPI的异步调用可以通过使用HttpClient类来实现。以下是一个简单的示例代码:

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

class Program
{
    static async Task Main(string[] args)
    {
        await CallWebAPI();
    }

    static async Task CallWebAPI()
    {
        using (var client = new HttpClient())
        {
            client.BaseAddress = new Uri("https://api.example.com/");

            HttpResponseMessage response = await client.GetAsync("api/resource");

            if (response.IsSuccessStatusCode)
            {
                string content = await response.Content.ReadAsStringAsync();
                Console.WriteLine(content);
            }
            else
            {
                Console.WriteLine("Error calling WebAPI. Status code: " + response.StatusCode);
            }
        }
    }
}

在上面的示例中,我们首先创建了一个HttpClient实例,并设置了WebAPI的基地址。然后使用GetAsync方法发送一个GET请求,并等待响应。如果响应成功,我们可以使用ReadAsStringAsync方法读取响应内容。如果发生错误,我们会输出相应的错误信息。

通过使用async和await关键字,我们可以在调用WebAPI时实现异步调用,避免阻塞主线程。

0