Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗goSpHtInr 232 of 280 menu
◀ ▶

Введение в HTTP-клиент в Go

Клиент в смысле HTTP это сторона, которая сама инициирует обращение к удаленному адресу, ждет ответ и читает из него тело, заголовки и служебные поля. В Go для этого служит стандартный пакет net/http: он уже умеет открывать соединение, отправлять запрос и вернуть структуру ответа или ошибку сети и разбора адреса.

Типичный сценарий начинается с адреса в виде строки. Программа формирует запрос, получает ответ, смотрит код состояния и при успехе читает тело целиком или по частям. Тело ответа нужно закрывать, иначе соединения остаются занятыми: в учебных примерах это делают отложенным вызовом сразу после успешного получения ответа.

Контекст из предыдущего раздела здесь пригодится для срока и отмены долгого ожидания. Заголовки запроса задают до отправки, заголовки ответа читают из объекта ответа. Параметры после знака вопроса в адресе удобнее собирать типом url.Values, а не склеивать строку вручную как единственный способ.

В этом разделе разберем простой запрос, код ответа, параметры адреса, заголовки, отправку тела, поведение при переходе на другой адрес и срок через контекст. Раздел про сервер пойдет следом: здесь только сторона, которая обращается наружу, без прослушивания порта и обработки входящих соединений.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить