Работа с сетью в С# с помощью класса HttpClient
Доброго времени суток! В данной статье мы рассмотрим с Вами основы работы с сетью Интертнет в C#. Для этой цели мы будем использовать высокоуровневый класс HttpClient.
В приведенных примерах мы создадим простые запросы GET и POST.
Протокол передачи гипертекста (HTTP) - это прикладной протокол для распределенных информационных систем. HTTP - это основа передачи данных для Всемирной паутины.
HttpClient - это базовый класс для отправки HTTP-запросов и получения HTTP-ответов от ресурса, идентифицируемого URI.
Методы HTTP-запроса
HTTP определяет набор методов запроса для указания желаемого действия, которое должно быть выполнено для данного ресурса.
- GET - запрашивает представление указанного ресурса
- HEAD - идентичен запросу GET, но без тела ответа
- POST - отправляет данные на ресурс, часто вызывая изменение состояния или побочные эффекты
- PUT - создает ресурс или обновляет существующий ресурс
- DELETE - удаляет указанный ресурс
- CONNECT - запускает двустороннюю связь с запрошенным ресурсом
- OPTION - описывает параметры связи для целевого ресурса
- TRACE - возвращает полный HTTP-запрос обратно для целей отладки
- PATCH - выполняет частичные изменения ресурса
Коды состояния Http
Коды состояния HTTP-ответа указывают, был ли успешно выполнен конкретный HTTP-запрос. Ответы сгруппированы по пяти классам:
- Информационные ответы (Informational) (100-199)
- Успешные ответы (Successful) (200-299)
- Перенаправления (Redirects) (300-399)
- Ошибки клиента (Client errors) (400-499)
- Ошибки сервера (Server errors) (500-599)
var url = "https://myrusakov.ru";
using var client = new HttpClient();
var result = await client.GetAsync(url);
Console.WriteLin(result.StatusCode);
В примере выше создается GET-запрос на сайт. Далее получаем код состояния запроса. В нашем случае должно быть.
Метод GetAsync отправляет запрос GET на указанный Uri в качестве асинхронной операции. Оператор await приостанавливает вычисление содержимого асинхронного метода до завершения асинхронной операции. Когда асинхронная операция завершается, оператор await возвращает результат операции, если таковой имеется.
C# HttpClient GET запрос
Метод GetStringAsync запрашивает представление указанного ресурса.
var url = "https://myrusakov.ru";
using var client = new HttpClient();
var content = await client.GetStringAsync(url);
// печатаем html- содержимое страницы
Console.WriteLine(content);
Таким образом, в данной статье мы рассмотрели самые базовые возможности класса HttpClient, а в следующих статьях рассмотрим другие методы этого класса.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.