cURL - cURL
Автор (ы) оригинала | Даниэль Стенберг |
---|---|
Разработчики) | Авторы проекта cURL |
Первый выпуск | 1996 |
Стабильный выпуск | |
Репозиторий | |
Написано в | C |
Операционная система |
|
Платформа | Кроссплатформенность |
Тип | FTP-клиент / HTTP-клиент |
Лицензия | завиток |
Веб-сайт |
завиток |
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» в следующем порядке:
- Каталог, в котором находится программа cURL.
- Текущий рабочий каталог.
- Системный каталог Windows.
- Каталог Windows.
- Каталоги, указанные в переменных среды% 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 - аналогичный инструмент командной строки без связанной библиотеки, но с возможностью рекурсивной загрузки.