Как сделать POST-запрос с помощью cURL на Ubuntu / Debian

Здравствуйте, друзья. Команда cURL – это полезная команда особенно для сетевых подключений в терминале. В этом посте вы узнаете, как сделать POST-запрос с помощью cURL. Таким образом, вы сможете быстро выполнить несколько тестов по отправке данных.

Что такое cURL?

Согласно сайту проекта

CURL – ЭТО ИНСТРУМЕНТ КОМАНДНОЙ СТРОКИ И БИБЛИОТЕКА ДЛЯ ПЕРЕДАЧИ ДАННЫХ С ПОМОЩЬЮ URL (АДРЕСОВ).

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

cURL доступен практически в любом дистрибутиве Linux, а в некоторых из них даже установлен по умолчанию. Поэтому получить его не составит труда.

Данный инструмент используется в командных строках или скриптах для передачи данных. Его применение простирается от компьютеров, до автомобилей, телевизоров и других устройств, которым он необходим.

И так поехали.

Установка cURL на Ubuntu / Debian

Как я уже говорил, cURL доступен практически для любой системы и лучше всего его устанавливать из официальных репозиториев. Итак, чтобы установить его, откройте терминал и выполните следующие команды.

sudo apt update

sudo apt upgrade

Это так быстро и просто.

Теперь проверьте установленную версию.

curl --version

Образец ответа терминала.

Выполнение POST-запроса с помощью cURL на Ubuntu / Debian
Выполнение POST-запроса с помощью cURL на Ubuntu / Debian

Теперь мы можем продолжить.

Как сделать POST-запрос с помощью cURL на Ubuntu / Debian

Идея заключается в отправке данных с помощью HTTP POST. Это очень удобно для скриптов и конфигураций. В целом синтаксис выглядит следующим образом.

curl -X POST [options] [URL]

Не обязательно, но обычно POST-запрос выполняется при использовании HTML-форм.

Если вы хотите отправить некоторые данные подобным образом, вы также можете использовать параметр -d.

curl -d "name=Angelo&website=unixcop" -X POST https://setiwik.ru/

В этом случае информация отправляется на определенный адрес. Для этого запрашивается Имя и Веб-сайт. Как видите, таким образом, включаются некоторые данные. Для этого обратите внимание, что вам нужен точный адрес получателя данных.

Существует опция -H, с помощью которой вы можете указать формат, в котором будут отправлены данные. Например, если вы хотите отправить информацию в HTML-форме с форматом application/x-www-form-urlencoded, то нужно указать его.

curl -X POST https://setiwik.ru/form -H "Content-Type: application/x-www-form-urlencoded" -d "name=Angelo1&email=sas@unixcop.com"

Таким образом, cURL уже знает в каком формате передавать данные. Другой пример с этим же параметром – в формате JSON.

curl -X POST https://setiwik.ru/json -H 'Content-Type: application/json' -d '{"name": "angelo", "password": "21125"}'.

Повторяю, вы должны знать в каком формате сайт будет обрабатывать запрос, прежде чем определять команду curl.

Еще один полезный пример – обработка XML-файлов.

curl -X POST https://setiwik.ru/echo/post/xml -H "Content-Type: application/xml" -d "<Data><Id>1</Id><Username>setiwik</Username></Data>"

Или отправить файл. Для этого случая curl по умолчанию включает отправку формата в зависимости от файла, но вы должны указать полный путь к файлу. Вы также можете указать конкретный тип с помощью опции -H.

curl -d @[путь] https://setiwik.ru/server

Как видите, процесс прост.

Заключение

В этом посте вы узнали как использовать cURL для отправки данных с помощью POST. Надеюсь вам понравилось и вы сможете применить это в своих проектах.

Понравилась статья?

Помогите Setiwik.ru создавать больше глубоких обзоров и новостей. Один клик и ваш вклад помогает держать серверы включёнными и авторов мотивированными!

Спасибо, что вы с нами!

Nazario

Я Назар. Уже больше десяти лет я работаю с Linux и Windows системами каждый день. Это моя основная профессия и большая часть жизни.
Всё, что ты читаешь на Setiwik.ru, начинается с официальной документации, мануалов и технических спецификаций. Я их изучаю очень внимательно. Но ценность статей появляется именно тогда, когда я беру эту базу и пропускаю через десятки реальных ситуаций: ночные аварии, странные баги, которые не гуглятся с первого раза, выстраданные конфиги и проверенные обходные пути.
Я не обещаю истину в последней инстанции. Но если мой опыт поможет тебе сэкономить хотя бы пару часов нервов и перезагрузок, значит всё это было не зря. Здесь только практика: от тонкой настройки серверов до самых неожиданных ситуаций, которые официальные руководства обычно обходят стороной.
Setiwik.ru это место, где IT становится понятнее и спокойнее. Заходи почаще. Будем разбираться вместе.

Практические инструкции по Windows и Linux
Добавить комментарий