Введение в HTTP-клиент в Rust
Клиент в смысле протокола это сторона, которая сама инициирует обращение к удаленному хосту, ждет ответ и читает из него служебные поля и тело. Сервер слушает порт и отвечает на входящие обращения; здесь нас интересует только исходящая сторона без собственного слушателя.
Адрес задают строкой с схемой, именем хоста и путем. После отправки приходит объект ответа или сообщение о сбое еще до разбора тела: сеть может оборваться, имя не найдется или соединение не установится.
В Rust такие шаги удобно писать асинхронно: ожидание ответа не блокирует поток целиком, если главная функция помечена атрибутом исполнителя из раздела про асинхронность. Внешний крейт для HTTP строит запрос, отправляет его и дает прочитать код, заголовки и текст через точки ожидания.
Дальше подключим зависимости в проекте Cargo, выполним запрос по адресу, разберем числовой код ответа, параметры в хвосте адреса, заголовки, отправку тела в формате JSON и предел времени на ожидание, а в конце закрепим приемы на задачах.