在C#中处理HTTP请求错误,通常需要使用HttpClient
类来发送请求,并捕获可能出现的异常。以下是一个简单的示例,展示了如何处理HTTP请求错误:
using System;
using System.Net.Http;
using System.Threading.Tasks;
namespace HttpRequestExceptionHandling
{
class Program
{
static async Task Main(string[] args)
{
try
{
string url = "https://api.example.com/data";
using var httpClient = new HttpClient();
var response = await httpClient.GetAsync(url);
if (response.IsSuccessStatusCode)
{
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine("请求成功,响应内容:\n" + responseBody);
}
else
{
Console.WriteLine($"请求失败,状态码:{response.StatusCode}");
}
}
catch (HttpRequestException e)
{
Console.WriteLine($"请求异常:{e.Message}");
}
catch (Exception e)
{
Console.WriteLine($"其他异常:{e.Message}");
}
}
}
}
在这个示例中,我们使用HttpClient.GetAsync
方法发送一个GET请求。如果请求成功,我们读取并输出响应内容。如果请求失败,我们输出状态码。我们还使用了try-catch
语句来捕获可能出现的HttpRequestException
和其他异常,并在控制台输出相应的错误信息。