Как выполнить curl запрос в windows

Утилита командной строки CURL

CURL — утилита командной строки для Linux или Windows, поддерживает работу с протоколами: FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, LDAP, POP3, IMAP и SMTP. Она отлично подходит для имитации действий пользователя на страницах сайтов и других операций с URL адресами. Поддержка CURL добавлена в множество различных языков программирования и платформ.

Как выполнить curl запрос в windows. Смотреть фото Как выполнить curl запрос в windows. Смотреть картинку Как выполнить curl запрос в windows. Картинка про Как выполнить curl запрос в windows. Фото Как выполнить curl запрос в windows

Запускаем командную строку, переходим в директорию curl/bin и пытаемся скачать главную страницу Google:

Следовать за редиректами

Сохранить вывод в файл

Сохраняем страницу Google в файл google.html :

Сохраняем документ gettext.html в файл gettext.html :

Загрузить файл, только если он изменён

Прохождение аутентификации HTTP

Получение и отправка cookie

Cookie используются сайтами для хранения некой информации на стороне пользователя. Сервер сохраняет cookie на стороне клиента (т.е. в браузере), отправляя заголовки:

А браузер, в свою очередь, отправляет полученные cookie обратно на сервер при каждом запросе. Разумеется, тоже в заголовках:

Передать cookie на сервер, как будто они были ранее получены от сервера:

Чтобы сохранить полученные сookie в файл:

Затем можно отправить сохраненные в файле cookie обратно:

Файл cookie.txt имеет вид:

Получение и отправка заголовков

По умолчанию, заголовки ответа сервера не показываются. Но это можно исправить:

Если содержимое страницы не нужно, а интересны только заголовки (будет отправлен HEAD запрос):

А вот так можно отправить свой заголовок:

Отправка данных методом POST

Содержимое файла data.txt :

Пример URL-кодирования данных из файла перед отправкой POST-запроса:

Содержимое файла username.txt :

Загрузка файлов методом POST

Чтобы отправить на сервер данные такой формы:

Работа по протоколу FTP

Скачать файл с FTP-сервера:

Если заданный FTP путь является директорией, то по умолчанию будет выведен список файлов в ней:

Источник

Запуск команд cURL из консоли Windows

есть ли способ установить cURL в Windows для запуска команд cURL из командной строки?

16 ответов

Если вы не в Cygwin, вы можете использовать собственные сборки Windows. Некоторые здесь:curl скачать мастер.

сначала вам нужно загрузить исполняемый файл cURL. Для Windows 64bit загрузите его из здесь и для Windows 32bit скачать с здесь После этого, сохраните на C: диск.

чтобы использовать его, просто откройте command prompt и введите:

люди, которые буквально не нуждаются в curl исполняемый файл, но вместо этого просто нужно, например, видеть или сохранять результаты запроса GET время от времени, можно использовать powershell напрямую. В обычной командной строке введите:

что, хотя немного многословно, похоже на ввод

в более Unix-иш среде.

обновление: мне нравится как Имранхафиз сделал еще один шаг в ответ. Однако я бы предпочел более простой cmd-скрипт, возможно, создающий следующего содержания:

который можно было бы назвать так же, как пример Unix-ish выше:

Если вы используете шоколадный диспетчер пакетов, вы можете установить cURL выполнив эту команду из командной строки или из PowerShell:

создайте пакетный файл в windows и наслаждайтесь cURL в windows:)

p.s. Если вы хотите, чтобы другая папка хранила исполняемый файл, Проверьте свои пути > echo %PATH%

Я также обнаружил, что если я положил Cygwin bin на мой путь windows, я могу запустить curl из командной строки windows. Он также даст вам доступ к таким вещам, как ls и grep

Я смог использовать это сайт чтобы легко загрузить и установить curl на моей машине Windows. Это заняло всего 30 секунд. Я использую Windows 7 (W / Admin privelages), поэтому я загрузил curl-7.37.0-win64.msi от http://curl.haxx.se/download.html.

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

предполагая, что вы новичок в игре или не можете установить программное обеспечение из-за ограничений безопасности, вы можете использовать Scoop для установки curl. В powershell или окне команд выполните следующие команды. Примечание это предполагает, что вы имеете PowerShell версии 3.0+.

другое классное преимущество здесь в том, что это устанавливает программное обеспечение только для текущего пользователя.

установить исключение выполнения

установить curl. Вы можете увидеть предупреждение о недостающем хэше, но вы должны увидеть окончательное сообщение о том, что cURL был успешно установлен

Проверьте установку curl

после завершения установки нажмите на cygwin, чтобы открыть консоль curl в windows и работать над командами curl.

Я могу немного опоздать для этого, но я могу решить свою проблему curl в cmd для windows 10.

вот некоторые объяснения

Шаг 2: Поиск «Win64-Generic» и скачать «Win64 x86_64 7zip» по «Darren Owen»

Шаг 3: распакуйте файл скачать и установите сертификат » ca-bundle.ЭЛТ » не трогать завиток.exe

Шаг 6: в системной переменной нажмите «путь» и вставьте путь к папке файла в моем случае это «C:\curl\curl_7_53_1_openssl_nghttp2_x64»

Не забудьте перезагрузить систему в течение одного раза

из командной строки Windows запустите curl через Git Bash

для тех, кто ищет быстрое решение, после стандартной установки cygwin, но выяснение curl не работает на платформе win 10 x64:

скачать этой удаленный репозиторий, извлечение его и запуск:

сработало как заклинание. Я предполагаю, что у него есть предустановленная опция для curl.

Источник

Как использовать cUrl В Windows 10

cUrl в Windows 10

Если вы хотите использовать cUrl в Windows 10, у вас есть два варианта. Проверьте свою сборку Windows 10, и если у вас есть что-то старше 17063, действуйте следующим образом.

Вам нужно будет скачать cUrl с официального сайта. Версия Windows находится внизу страницы загрузки. Вы хотите загрузить общую версию с застежкой-молнией. Извлеките заархивированный файл и внутри папки bin, вы найдете файл curl.exe. Откройте командную строку в этой папке и запустите любую команду, которую вы хотите.

Как выполнить curl запрос в windows. Смотреть фото Как выполнить curl запрос в windows. Смотреть картинку Как выполнить curl запрос в windows. Картинка про Как выполнить curl запрос в windows. Фото Как выполнить curl запрос в windows

Так как потребуется много времени, чтобы записывать CD в папку bin каждый раз, когда вы хотите использовать cUrl, рекомендуется добавить путь к вашим переменным среды пути. Это позволит вам запускать cUrl из любого места.

cUrl В Windows 7, 8 / 8.1

Использование cUrl

Как выполнить curl запрос в windows. Смотреть фото Как выполнить curl запрос в windows. Смотреть картинку Как выполнить curl запрос в windows. Картинка про Как выполнить curl запрос в windows. Фото Как выполнить curl запрос в windows

Для старых версий Windows 10 и для Windows 7 и 8 / 8.1 вам нужно сначала cd в папку с cUrl EXE, а затем выполнить команду.

Microsoft предоставляет пользователям множество причин для обновления до Windows 10. В дополнение к добавлению cUrl по умолчанию он также включает в себя Tar сейчас. Tar позволяет создавать архивы и извлекать их, не требуя дополнительных инструментов. Если это недостаточно для обновления, есть и тот факт, что Office 2019 будет работать только на ПК с Windows 10.

Источник

Что Такое Curl и Как работает Эта Команда?

Что такое Curl? Curl — это сокращение от “Client URL”. Утилита доступна в большинстве систем на основе Unix и предназначена для проверки подключения к URL-адресам. Кроме того команда Curl — отличный инструмент передачи данных. Давайте же узнаем, как ею пользоваться.

Команда Curl поддерживает следующий список протоколов:

Это наиболее важные поддерживаемые протоколы, но есть и другие. Curl работает на libcurl, которая является бесплатной библиотекой для передачи URL на стороне клиента.

Прокачайте ваш проект, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.

Проверка Версии Curl

Прежде чем мы начнём работать с Curl, нам нужно войти в наш VPS. Если вам нужна помощь, ознакомьтесь с этим руководством по SSH.

Сначала давайте проверим её доступною версию, с помощью следующей команды:

В выводе вы должны увидеть версию и список поддерживаемых протоколов. Теперь мы можем взглянуть на некоторые примеры команд Curl.

Основной Синтаксис Команды Curl

Итак, давайте узнаем, как пользоваться утилитой. Основной синтаксис Curl выглядит следующим образом:

Эта команда отобразит полный исходный код домашней страницы домена. Если протокол не указан, Curl интерпретирует его как HTTP.

Команда Curl для Работы с Файлами

Команды Curl могут загружать файлы из удалённой локации. Есть два способа это сделать:

Если по какой-либо причине загрузка будет прервана, вы можете возобновить её с помощью следующей команды:

Curl также позволяет загрузить несколько файлов одновременно. Пример:

Если вы хотите загрузить несколько файлов с нескольких URL, перечислите их все в файле. Команды Curl могут быть объединены с xargs для загрузки различных URL-адресов.

Команды Curl для HTTP

Curl также можно использовать c прокси-сервером. Если вы находитесь за прокси-сервером, прослушивающим порт 8090 на sampleproxy.com, загрузите файлы, как показано ниже:

Типичный HTTP-запрос всегда содержит заголовок. Заголовок HTTP отправляет дополнительную информацию об удалённом веб-сервере вместе с фактическим запросом. С помощью инструментов разработчика в браузере вы можете посмотреть сведения о заголовке, а проверить их можно с помощью команды curl.

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

А вот пример запроса POST :

Здесь text=Hello — это параметр запроса POST. Такое поведение похоже на HTML-формы.

Команда содержит запрос POST, за которым следует запрос GET.

Каждый HTTP-запрос содержит агент пользователя, который отправляется как часть запроса. Он указывает информацию о браузере клиента. По умолчанию запрос содержит curl и номер версии в качестве информации об агенте пользователя. Пример вывода показан ниже:

Вы можете изменить дефолтную информацию об агенте пользователя, используя следующую команду:

Теперь вывод будет выглядеть так:

Команда Curl и Cookies

Вот пример такой команды:

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

Curl и FTP

Утилита поддерживает FTP! Вы можете использовать её для загрузки файлов с удалённого сервера.

В приведённой выше команде ftp://sampleftpserver — это FTP-сервер, который принимает соединения. Вы можете не указывать имя пользователя и пароль для анонимных FTP-соединений. Введите команду и посмотрите, как заполняется индикатор выполнения.

Вы также можете загружать файлы с помощью этой команды:

Опять же таки, мы можем пропустить имя пользователя и пароль для анонимных FTP-соединений.

Ограничение Скорости Скачивания

Скачивая или загружая данные с помощью Curl, вы не можете знать, насколько большим будет вывод. Вы можете ограничить скорость скачивания, чтобы убедиться, что Curl не ограничивает пропускную способность канала.

Команда ниже ограничивает скорость скачивания до 100К:

Выводы

В этом руководстве мы рассказали вам, что такое curl, а также, как использовать эту мощную утилиту для скачивания и загрузки данных. Если вы работаете с командной строкой, то вам стоит научиться пользоваться этой командой. На самом деле Curl — это не просто утилита командной строки для Linux или Windows. Она имеет много вариантов применения и поддерживает разные протоколы.

И помните, если вам нужна помощь или вы хотите узнать более сложные команды Curl, вы всегда можете обратиться к руководству, которое должно быть во всех версиях Unix:

Мы надеемся, что это руководство станет для вас отправной точкой в использовании этой утилиты. И не забудьте рассказать нам о своём опыте работы с ней в комментариях!

Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.

Источник

curl — учимся тестировать API

Как выполнить curl запрос в windows. Смотреть фото Как выполнить curl запрос в windows. Смотреть картинку Как выполнить curl запрос в windows. Картинка про Как выполнить curl запрос в windows. Фото Как выполнить curl запрос в windows

Осваиваем быстрый, маленький и простой инструмент тестирования API

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

Этот материал требует базового знакомства с HTTP-протоколом, понимания что такое веб-API, а также умения работать с командной строкой в Windows, надеемся ты это умеешь.

Настройка

Как всякий серьезный софт, curl требует установки в операционной системе. Хорошая новость: скорее всего, он уже установлен! Точнее, встроен в операционку. Уважающий себя тестировщик, разумеется, работает в Linux, а почти каждый дистрибутив Linux уже идет с curl. Более того, даже Windows 10 (начиная с версии 1803) поставляется с curl.

Проверим, есть ли в системе curl.

В Linux набираем в терминале:

Если все-таки работаешь в Windows, то запускаешь cmd или, лучше, PowerShell:

Команда покажет версию curl, прикрепленные библиотеки, дату релиза, поддерживаемые протоколы и поддерживаемые функции. В Linux увидим следующее:

Если введенная команда выдала ошибку, то curl не установлен, значит его надо скачать и поставить. Еще одна хорошая новость: он бесплатный (но есть нюансы, о которых в конце). Есть версии для практически всех операционных систем, размер ехе-шника не превышает 5 Мб.

Если понадобилось ознакомиться с curl, а опыта с API нет, ситуацию облегчит тестовый httpbin-сервис, примеры с которым приведены далее в этом посте.

Примечание. С этого момента, будут приводиться исключительно «линуксовые» bash-команды, для ясности и читабельности. Если ты сидишь в Windows и примеры почему-то не работают, попробуй добавлять «.exe» после команды curl, или удалять (возможные) лишние пробелы в строках (line breaks).

Базовые опции

Несмотря на то, что Curl очень простой инструмент, он имеет множество различных функций. Начнем с ними знакомиться:

curl показывает логи HTTP-транзакций в терминале. Если нужно еще больше подробностей, то curl сохраняет все в файлы для проверки при необходимости. Для это есть функции:

GET-метод

Мы познакомились с основами, пора перейти к более серьезным вещам.

Во первых, меняем текущую папку в командной оболочке, на домашнюю папку или на рабочий стол (desktop), чтобы легче было найти выведенные из curl файлы.

Делаем первые запросы:

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

В файле result.headers видим, что запрос успешно выполнен, с кодом ответа 200 (все ОК), от сервера получен таймкод ответа (timestamp), и все заголовки.

В этом файле result.json находится тело ответа. Это данные, возвращенные сервером, в красивом JSON-формате (об особенностях формата читаем здесь).

POST-метод

Отправка простого текста

Сейчас попробуем отправить обычный текст (plaintext) на сервер, с помощью метода POST.

Смотрим теперь в файл result.headers

Видим, что сервер получил plaintext-сообщение с тестовым заголовком и вернул его обратно без изменений.

Параметры строки запроса

В curl поддерживается не только простой текст, но и достаточно сложные параметры типа:

Сервер, как и предыдущем примере, правильно «зеркалит» параметры, которые curl отправил.

Отправка JSON-объекта

Поставим curl-у задачу посложнее, попытаемся отправить на сервер json-файл и посмотрим что получится:

И снова видим, как curl умеет корректно отправлять контент JSON-файлов на сервер.

Эмуляция отправки значений формы

Иногда может понадобиться имитировать отправку формы. Curl умеет и это:

Видим, что сервер получил форму и правильно обработал все поля.

Отправка файла

Выше мы демонстрировали достаточно простые действия. А как насчет передачи файла? Файлы передаются таким же образом, как формы выше. Отправим изображение из текущей папки:

curl может потребоваться некоторое время чтобы отправить большой файл, а потом сервер вернет этот файл (причем закодированный в Base64). Curl должен правильно обработать такой запрос.

Другие методы

Можно попробовать «погонять» любые запросы, чтобы убедиться, как полезен бывает curl при тестировании API. В целом, обработка запросов зависит от типа API и имплементации метода.

Аутентификация

curl умеет проводить аутентификацию на сервере, когда по URL-адресу нужен ввод пользовательских имени-пароля. В этом случае httpbin получает ожидаемые имя и пароль в формате /basic-auth// и сопоставляет значения с введенными. Если эти данные не введены, получается следующее:

То есть код 401 (не прошла авторизация).

Добавим в запрос логин и пароль:

Все хорошо, авторизация прошла успешно.

Curl позволяет авторизоваться и другими методами — например, с помощью токена. Токен просто отправляется в соответствующем заголовке.

Платный тариф

Уже должно быть понятно, что curl — полезная вещь для тестировщика. Чтобы в этом мнении укрепиться, рассмотрим еще некоторые нюансы.

Распространенные инструменты тестирования API — бесплатные, но в них чаще всего бывают платными функции командной работы. Или например, запросы к социальным сетям (Вконтакте и Facebook) блокированы в бесплатном тарифе, и это один из немногих минусов в столь приятном продукте.

В других похожих инструментах бывает слишком сложный интерфейс, но это не об curl. Для простоты, рекомендую работать в VSCode. Связка VSCode c curl — идеальная.

Как выполнить curl запрос в windows. Смотреть фото Как выполнить curl запрос в windows. Смотреть картинку Как выполнить curl запрос в windows. Картинка про Как выполнить curl запрос в windows. Фото Как выполнить curl запрос в windows

На скрине слева отрендеренный markdown-документ, справа полученные result.headers и result.json, и терминал внизу, куда тестировщику приходится глядеть чаще всего.

Вопреки убеждению, бытующему в определенных кругах, curl хорошо работает не только в REST-архитектуре, но и в SOAP.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *