Фэндом

Libcurlru вики

Заглавная

56статей на
этой вики
Добавить новую страницу
Обсуждение0 Поделиться
Добро пожаловать на ресурс, посвященный русской документации Libcurl

На данный момент создано 56 статей, и вы можете помочь нам

Свежие правки | Активные участники | Категории | Справка | Шаблоны

На этом ресурсе размещается перевод документации библиотеки libcurl. Оригинал документации и саму библиотеку вы можете найти на официальном сайте http://curl.haxx.se/libcurl/. Цель проекта - обеспечить полный перевод на русский язык и обеспечить удобную навигацию по документации. Если вы нашли ошибку, замечание, неточность или грубость перевода, не поленитесь, откорректируйте страницу, ведь в том числе и от вашей работы зависит качество проекта. А если есть возможность, заведите описание еще не переведенных функций. Если вы решите помочь с переводом, пожалуйста, ознакомитесь с Правилами перевода.

Here you can find Libcurl documentation in Russian. Libcurl - a library used in the utility curl.

Libcurl Править

libcurl это свободная и простая в использовании клиентская библиотека по передачи данных по URL, она поддерживает DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET и TFTP. Также libcurl имеет поддержку SSL сертификатов, HTTP POST, HTTP PUT, FTP загрузку, HTTP form загрузку, proxy, cookies, user+password авторизацию (Basic, Digest, NTLM, Negotiate, Kerberos), докачивания файлов, http прокси туннелирования и многого другого!

libcurl легко переносима, она собирается и работает на многих платформах, включая Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HPUX, IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Amiga, OS/2, BeOs, Mac OS X, Ultrix, QNX, OpenVMS, RISC OS, Novell NetWare, DOS и остальные...

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

Простой интерфейс Править

При использовании в Libcurl "простого" интерфейса вы инициализируете сеанс и получаете handle (часто упоминается как "easy handle"), который вы используете в качестве аргумента в функциях Easy интерфейса. Используйте curl_easy_init, чтобы получить handle.

После получения вы должны установить все нужные параметры в предстоящей передаче, наиболее важным среди которых является URL (передавать что-то без заданного URL невозможно). Вы можете задавать различные функции обратного вызова, которые будут вызываться из библиотеки, при получении данных и т.д. Для всего этого используется curl_easy_setopt.

После того как все настройки окончены, вы сообщаете Libcurl выполнение передачи с помощью curl_easy_perform. Она проделает все операции и вернет результат своей работы типа перечисления CURLcode.

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

Никогда не используйте один и тот же хендл в разных потоках!!! (можно сделать синхронизацию, но это сведёт на нет плюсы многопоточности)

Функции Править

curl_easy_init curl_easy_getinfo Нужно перевести эту страницу curl_easy_strerror curl_free
curl_easy_cleanup curl_easy_setopt curl_easy_escape curl_escape Нужно перевести эту страницу
curl_easy_duphandle curl_easy_perform curl_easy_unescape curl_unescape Нужно перевести эту страницу
curl_easy_reset curl_easy_pause curl_formadd Нужно перевести эту страницу curl_getdate Нужно перевести эту страницу
curl_global_init curl_easy_send Нужно перевести эту страницу curl_formfree curl_version
curl_global_init_mem curl_easy_recv Нужно перевести эту страницу curl_slist_append Нужно перевести эту страницу curl_version_info Нужно перевести эту страницу
curl_global_cleanup curl_slist_free_all Нужно перевести эту страницу

Multi интерфейс Править

This is an overview on how to use the libcurl multi interface in your C programs. There are specific man pages for each function mentioned in here. There's also the libcurl-tutorial(3) man page for a complete tutorial to programming with libcurl and the libcurl-easy(3) man page for an overview of the libcurl easy interface.

All functions in the multi interface are prefixed with curl_multi.

Share интерфейс Править

This is an overview on how to use the libcurl share interface in your C programs. There are specific man pages for each function mentioned in here.

All functions in the share interface are prefixed with curl_share.

Это обзор о том, как использовать libcurl multi интерфейс в C-программах. Есть конкретные man-страницы для каждой функции, упомянутой здесь.

Все функции в разделяемом (share) интерфейсе снабжаются префиксом curl_share.

ПримерыПравить

HTTP

simple.c - демонстрация получения удалённой веб-страницы с помощью всего четырёх функций libcurl.

HTTPS

https.c - получение страницы HTTPS.
simplessl.c - демонстрирует получение HTTPS-страницы и установку различных опций SSL.

HTTP с заголовками

sepheaders.c - получение веб-страницы и запись заголовков ответа в отдельный файл.

FTP

ftpget.c - доказывает простоту получения файла по FTP.

FTP отправка

ftpupload.c - отправляет локальный файл на удалённый FTP-сервер, а также переименовывает файл после успешной передачи.

Получение файла в память

getinmemory.c - описывает процесс использования системы обратных вызов для получения документов в буфер в памяти без необходимости записывать файлы.

HTTP PUT

httpput.c - выполнение PUT-запроса локального файла на HTTP-сервер.

HTTP POST

postit2.c - показывает как создать форму по RFC1867 и отправить её на HTTP-сервер.

Постоянные соединения

persistant.c демонстрирует как можно получать файлы последовательно через одно соединение, если удаленный сервер поддерживает это.

Многопоточное получение URL

multithread.c - запуск нескольких потоков для получения одного URL. Необходима поточная библиотека.

Получение URL с отображением прогресса через GTK

curlgtk.c - использует GTK и обратный вызов libcurl для показа GUI-прогресса выполнения загрузки.

fopen() для URL

fopen.c демонстрирует как можно использовать fopen()-эмуляцию для чтения URL вместо локальных файлов.

Неблокирующаяся отправка формы

multi-post.c makes a multipart formpost using the multi interface, which makes it a non-blocking operation.

Отладочный обратный вызов

debug.c показывает как можно использовать ответ debug чтобы получить полную цепочку всех данных протокола, которые были отправлены/получены (и не только).

Парсинг HTML

htmltitle.cc показывает как использовать libxml для парсинга HTML полученного libcurl.

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

curlx.c uses CURLOPT_SSL_CTX_FUNCTION to set a custom callback to deal with an OpenSSL SSL_CTX * at SSL handshake time.

Выполнение SOAP через libcurl

SOAP-пример от vivtek.com

См. такжеПравить

Список всех функций

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

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

Также на Фэндоме

Случайная вики