Код статуса ответа в C#
Код состояния - трехзначное число в первой
строке ответа сервера. После GetAsync или
SendAsync его читают из
HttpResponseMessage.StatusCode, не дожидаясь
полного чтения тела.
Для главной страницы "example.com" обычно
приходит 200. Если нужен только код, тело
в программе можно не читать. Достаточно
завершить запрос и напечатать число:
using HttpClient client = new();
using HttpResponseMessage response = await client.GetAsync("https://example.com/");
Console.WriteLine((int)response.StatusCode);
Console.WriteLine(response.IsSuccessStatusCode);
Несуществующий путь часто даёт 404. Запрос
HEAD через HttpMethod.Head оставляет
тело пустым, а код всё равно доступен - это удобно,
когда нужно проверить «есть ли ресурс», не скачивая
страницу целиком:
using HttpClient client = new();
using HttpResponseMessage response = await client.SendAsync(
new HttpRequestMessage(HttpMethod.Head, "https://example.com/missing-page"));
Console.WriteLine((int)response.StatusCode);
Console.WriteLine(response.Content.Headers.ContentLength ?? 0);
Выведите код ответа для
"https://example.com/missing-page" через
обычный GET.
Отправьте HEAD-запрос на
"https://example.com/" и напечатайте
код и признак успеха IsSuccessStatusCode
через пробел.