温馨提示×

C#调用WebAPI如何处理异常

c#
小樊
146
2024-07-10 00:13:27
栏目: 编程语言

在C#中调用WebAPI时,可以通过try-catch块来处理异常。以下是一个简单的示例代码:

try
{
    HttpClient client = new HttpClient();
    HttpResponseMessage response = await client.GetAsync("https://api.example.com/data");

    if (response.IsSuccessStatusCode)
    {
        string responseBody = await response.Content.ReadAsStringAsync();
        // 处理成功的响应数据
    }
    else
    {
        // 处理API返回的错误信息
        throw new Exception("API请求失败:" + response.ReasonPhrase);
    }
}
catch (HttpRequestException ex)
{
    // 处理HTTP请求异常
    Console.WriteLine("HTTP请求异常:" + ex.Message);
}
catch (Exception ex)
{
    // 处理其他异常
    Console.WriteLine("发生异常:" + ex.Message);
}

在上面的示例中,我们首先使用HttpClient发送一个GET请求到WebAPI,并检查响应的状态。如果响应状态码为成功,我们可以通过ReadAsStringAsync()方法获取响应体的内容。如果响应状态码不是成功,则抛出一个异常来处理API返回的错误信息。

在catch块中,我们分别处理了HttpRequestException和其他异常。对于HTTP请求异常,我们输出异常信息;对于其他异常,也可以根据具体情况进行相应的处理。

0