Привіт, в цій статті розглянемо використання curl і бібліотеки Libcurl.
cURL - вільна (поширювана за ліцензією MIT), кроссплатформенная службова програма командного рядка, що дозволяє взаємодіяти з безліччю різних серверів по безлічі різних протоколів з синтаксисом URL.
Для libcurl є модулі інтеграції для роботи з більш ніж 30 мовами програмування.
Бібліотека CURL (Client URLs) дозволяє передавати файли на віддалений комп'ютер, використовуючи безліч Інтернет протоколів. Вона має дуже гнучку настройку і дозволяють виконати практично будь-який віддалений запит.
CURL підтримує протоколи HTTP, HTTPS, FTP, FTPS, DICT, TELNET, LDAP, FILE, і GOPHER, так само як HTTP-post, HTTP-put, cookies, FTP-закачкe, продовження перерваної передачі файлів, паролі, номери портів, сертифікати SSL, Kerberos і проксі.
Використовуючи CURL, web-сервер може виступати повноцінним клієнтом будь-якого заснованого на HTTP протоколі сервісі, наприклад: XML-RPC, SOAP, або WebDAV.
У загальному вигляді використання бібліотеки зводитися до чотирьох кроків:
- Створення ресурсу CURL c допомогою функції curl_init.
- Установка параметрів c допомогою функції curl_setopt.
- Виконання запиту c допомогою функції curl_exec.
- Звільнення ресурсу CURL c допомогою функції curl_close.
Простий приклад використання CURL
Використання cURL для створення GET запиту
Відправка GET запиту нічим не відрізняється від отримання сторінки. Важливо зауважити, що рядок запиту формується таким чином:
Приклад використання POST запиту
Відправка POST запиту мало чим відрізняється від відправки GET запиту. Всі основні кроки залишаються такі ж. Змінні також задаються парами:
Приклад FTP-сесії
При виникненні проблем у використання cURL необхідно додати наступні рядки перед викликом curl_close для отримання звіту про останньому виконаному запиті: