HttpRequestException
Исключение из System.Net.Http выбрасывает
HttpClient, когда запрос к серверу
не выполнен. В примерах без сети его создают
вручную: throw new HttpRequestException("abcde").
Перехват позволяет обработать сбой без
падения программы. Рядом по смыслу -
TimeoutException
и
UriFormatException.
Синтаксис
using System.Net.Http;
throw new HttpRequestException("abcde");
Пример
Давайте поймаем HttpRequestException:
using System;
using System.Net.Http;
class Program
{
static void Main()
{
try
{
throw new HttpRequestException("abcde");
}
catch (HttpRequestException ex)
{
Console.WriteLine(ex.Message);
}
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте выведем короткий маркер в catch:
using System;
using System.Net.Http;
class Program
{
static void Main()
{
try
{
throw new HttpRequestException("abcde");
}
catch (HttpRequestException)
{
Console.WriteLine("fail");
}
}
}
Результат выполнения кода:
"fail"
Пример
Давайте проверим, что тип наследует
Exception:
using System;
using System.Net.Http;
class Program
{
static void Main()
{
try
{
throw new HttpRequestException("abcde");
}
catch (HttpRequestException ex)
{
Console.WriteLine(ex is Exception);
}
}
}
Результат выполнения кода:
True
Смотрите также
-
UriFormatException,
когда адрес задан неверно -
TimeoutException,
когда истекло время ожидания -
JsonException,
сбой разбора тела ответа -
throw,
которым создают исключение в примере