НОВОЕ! |Один API-вызов — чистые данные. Парсеры не нужны.10 000 токенов бесплатно →

Как отправлять HTTP-заголовки с помощью cURL: подробное руководство с примерами

Освойте отправку и получение заголовков HTTP с помощью cURL с помощью этого всеобъемлющего руководства. Изучите примеры, пользовательские заголовки и советы по устранению неполадок.

Опубликовано21 сентября 2023 г.
Обновлено28 мая 2025 г.
Время чтения3 мин
АвторBrandon Perry

Отправка HTTP-заголовков с помощью cURL — это фундаментальный навык для любого, кто работает с API или веб-сервисами. Заголовки HTTP передают важную информацию о вашем запросе, такую как тип контента, авторизация и т. д. cURL, мощный инструмент командной строки для выполнения HTTP-запросов, позволяет вам легко настраивать и отправлять эти заголовки. В этом руководстве мы покажем вам процесс отправки HTTP-заголовков с помощью cURL, а также приведем множество практических примеров.

Как отправлять HTTP-заголовки с помощью cURL: подробное руководство с примерами

Пререквизиты#

Прежде чем мы углубимся в примеры, убедитесь, что в вашей системе установлен cURL. Вы можете проверить, установлено ли оно, выполнив:

curl --version

Если он не установлен, вы можете скачать его с официального сайта cURL.

Базовый синтаксис cURL#

Основной синтаксис отправки HTTP-запроса с помощью cURL:

curl [options] [URL]

Чтобы включить заголовки HTTP в ваш запрос, вы можете использовать опцию -H или –header, за которой следует информация заголовка.

Пример 1. Отправка запроса GET с настраиваемыми заголовками#

Начнем с простого запроса GET к гипотетическому API, включая пользовательский заголовок. Предположим, вы хотите включить заголовок «Авторизация» в свой ключ API.

curl -H "Authorization: Bearer YOUR_API_KEY" https://api.example.com/resource

Замените YOUR_API_KEY своим фактическим ключом API.

Пример 2. Отправка POST-запроса с данными JSON#

В этом примере мы отправим запрос POST с полезными данными JSON и заголовком настраиваемого типа контента.

curl -X POST -H "Content-Type: application/json" -d '{"name": "John", "email": "[email protected]"}' https://api.example.com/users

Эта команда определяет метод запроса как POST (-X POST), устанавливает тип контента JSON (-H «Content-Type: application/json») и включает данные JSON с ключом -d.

Пример 3: Установка нескольких заголовков#

Вы можете включить несколько заголовков в один запрос cURL. Здесь мы отправляем запрос с заголовками «Authorization» и «User-Agent».

curl -H "Authorization: Bearer YOUR_API_KEY" -H "User-Agent: MyClient/1.0" https://api.example.com/resource

Чтобы отправить файлы cookie вместе с вашим запросом, используйте параметр -b или –cookie, за которым следует данные файла cookie.

curl -b "session=12345; preferences=darkmode" https://api.example.com/dashboard

В этом примере отправляются два файла cookie: «сеанс» и «предпочтения».

Пример 5: Следующие перенаправления#

По умолчанию cURL не следует перенаправлениям HTTP. Чтобы включить перенаправление, используйте опцию -L или –location.

curl -L https://example.com

Эта команда будет следовать за любыми перенаправлениями и отображать окончательное содержимое страницы.

Пример 6: Отправка пользовательского агента пользователя#

Вы можете установить собственный заголовок User-Agent для идентификации вашего запроса.

curl -H "User-Agent: MyCustomApp/1.0" https://api.example.com/resource

Пользовательские заголовки User-Agent полезны при взаимодействии с API, требующими определенных пользовательских агентов.

Пример 7. Отправка заголовков запроса без данных#

Если вам нужно отправить заголовок без тела запроса, вы можете использовать опцию -I или –head.

curl -I https://api.example.com/resource

Эта команда отправляет запрос HEAD, который извлекает только заголовки, а не фактическое содержимое.

Пример 8: Отправка базовой аутентификации#

Чтобы отправить учетные данные базовой аутентификации HTTP, вы можете включить заголовок «Authorization» с вашим именем пользователя и паролем, закодированными в Base64.

curl -H "Authorization: Basic BASE64_ENCODED_CREDENTIALS" https://api.example.com/resource

Замените BASE64_ENCODED_CREDENTIALS своим именем пользователя и паролем в кодировке Base64 (например, имя пользователя:пароль).

Пример 9: Отладка и подробный режим#

При устранении неполадок или проверке HTTP-запроса и ответа вы можете использовать подробный режим cURL с опцией -v или –verbose.

curl -v https://api.example.com/resource

Будет отображена подробная информация о запросе и ответе, включая заголовки.

Отправка HTTP-заголовков с помощью cURL — важнейший навык для работы с веб-сервисами и API. С помощью примеров, приведенных в этом руководстве, вы можете настроить свои запросы, обрабатывать аутентификацию, отправлять файлы cookie и многое другое. Познакомившись с возможностями cURL, вы будете хорошо подготовлены к эффективному взаимодействию с различными веб-сервисами.

Как отправлять HTTP-заголовки с помощью cURL: подробное руководство с примерами