cURL - cURL

cURL
Curl-logo.svg
CURL загрузка CURL screenshot.png
Пример вывода из curl -O
Автор (ы) оригинала Даниэль Стенберг
Разработчики) Авторы проекта cURL
Первый выпуск 1996 ; 25 лет назад ( 1996 )
Стабильный выпуск
7.79.1  Отредактируйте это в Викиданных / 22 сентября 2021 г . ; 18 дней назад ( 22 сентября 2021 г. )
Репозиторий
Написано в C
Операционная система
  • AIX
  • AmigaOS
  • BeOS
  • Хром NaCl
  • ДОС
  • DragonFly BSD
  • FreeBSD
  • GNU-Darwin
  • HPUX
  • Хайку
  • Херд
  • IRIX
  • Linux
  • macOS
  • МИНТ
  • Полночь BSD
  • Minix
  • NetBSD
  • NetWare
  • Nexenta
  • OS / 2
  • Открытый сервер
  • OpenBSD
  • Plan9
  • QNX
  • ОС RISC
  • Солярис
  • Слог
  • Tru64 UNIX
  • UnixWare
  • VMS
  • Майкрософт Виндоус
  • z / OS
Платформа Кроссплатформенность
Тип FTP-клиент / HTTP-клиент
Лицензия завиток
Веб-сайт завиток .se Отредактируйте это в Викиданных

cURL (произносится как «curl», / kɜːl / ) - проект компьютерного программного обеспечения, предоставляющий библиотеку ( libcurl ) и инструмент командной строки ( curl ) для передачи данных с использованием различных сетевых протоколов . Название расшифровывается как « URL-адрес клиента », который был впервые выпущен в 1996 году.

История

cURL был впервые выпущен в 1996 году. Первоначально он назывался httpget, а затем стал urlget перед тем, как принять текущее имя cURL. Первоначальный автор и ведущий разработчик - шведский разработчик Даниэль Стенберг , который создал cURL, потому что хотел автоматизировать получение курсов обмена валют для пользователей IRC .

libcurl

libcurl - это бесплатная библиотека для передачи URL-адресов на стороне клиента , поддерживающая файлы cookie , DICT , FTP , FTPS , Gopher , HTTP / 1 (с поддержкой HTTP / 2 и HTTP / 3 ), HTTP POST , HTTP PUT , HTTP- туннелирование прокси , HTTPS , IMAP , Kerberos , LDAP , MQTT , POP3 , RTSP , RTMP , SCP , SMTP и SMB . Библиотека поддерживает схему URI файла , SFTP , Telnet , TFTP , возобновление передачи файлов, загрузку по FTP, загрузку на основе формы HTTP, сертификаты HTTPS, LDAPS, прокси и аутентификацию пользователя с паролем.

Библиотека libcurl переносима. Он строится и работает одинаково на многих платформах, включая AIX , AmigaOS , Android , BeOS , BlackBerry Tablet OS и BlackBerry 10 , OpenVMS , Darwin , DOS , FreeBSD , HP-UX , HURD , iOS , IRIX , Linux , macOS , NetBSD , NetWare. , OpenBSD , OS / 2 , QNX Neutrino , RISC OS , Solaris , Symbian , Tru64 , Ultrix , UnixWare и Microsoft Windows .

Библиотека libcurl бесплатна, ориентирована на многопотоковое исполнение и совместима с IPv6 . Привязки доступны для более чем 50 языков , включая C / C ++ , Java , PHP и Python .

Библиотека libcurl поддерживает GnuTLS , mbed TLS , NSS , gskit в IBM i , SChannel в Windows, Secure Transport в macOS и iOS, SSL / TLS через OpenSSL , Boringssl , libressl , AmiSSL , wolfSSL , BearSSL , Mesalink и rustls . [ необходима цитата ]

cURL

cURL - это инструмент командной строки для получения или отправки данных, включая файлы, с использованием синтаксиса URL . Поскольку cURL использует libcurl, он поддерживает все протоколы, поддерживаемые libcurl.

cURL поддерживает HTTPS и по умолчанию выполняет проверку сертификата SSL, если указан безопасный протокол, например HTTPS. Когда cURL подключается к удаленному серверу через HTTPS, он получит сертификат удаленного сервера, а затем проверит в своем хранилище сертификатов CA действительность удаленного сервера, чтобы убедиться, что удаленный сервер является тем, за который он претендует. Некоторые пакеты cURL связаны с файлом хранилища сертификатов ЦС. Существует несколько вариантов указания сертификата CA, например --cacert и --capath . Параметр --cacert можно использовать для указания местоположения файла хранилища сертификатов ЦС. На платформе Windows, если файл сертификата ЦС не указан, cURL будет искать файл сертификата ЦС с именем «curl-ca-bundle.crt» в следующем порядке:

  1. Каталог, в котором находится программа cURL.
  2. Текущий рабочий каталог.
  3. Системный каталог Windows.
  4. Каталог Windows.
  5. Каталоги, указанные в переменных среды% PATH%.

cURL вернет сообщение об ошибке, если удаленный сервер использует самозаверяющий сертификат или если сертификат удаленного сервера не подписан ЦС, указанным в файле сертификата ЦС. Для пропуска проверки сертификата можно использовать параметр -k или --insecure . В качестве альтернативы, если удаленный сервер является доверенным, сертификат ЦС удаленного сервера можно добавить в файл хранилища сертификатов ЦС.

Примеры

Базовое использование cURL включает в себя простой ввод curl в командной строке, за которым следует URL-адрес вывода, который нужно получить:

$ curl www.example.com

По умолчанию cURL отображает вывод, который он извлекает, в стандартный вывод, указанный в системе (обычно это окно терминала). Таким образом, выполнение приведенной выше команды в большинстве систем отобразит исходный код www.example.com в окне терминала. Вместо этого можно использовать флаг -o для сохранения вывода в файл:

$ curl -o example.html www.example.com

Доступны дополнительные параметры, которые изменяют поведение инструмента.

Смотрите также

  • curl-loader - инструмент тестирования с открытым исходным кодом на основе cURL
  • libwww - ранняя библиотека с интерфейсом командной строки
  • PowerShell - iwr (Invoke-WebRequest) Windows PowerShell имел функциональность, схожую с curl; класс Web-client тоже.
  • Веб-сканер - интернет-бот, который может сканировать Интернет.
  • Wget - аналогичный инструмент командной строки без связанной библиотеки, но с возможностью рекурсивной загрузки.

использованная литература

внешние ссылки