CXXCurl
CXXUrl — это библиотека C++ на основе libcurl, но она представляет собой нечто большее, чем просто объектно-ориентированную оболочку для curl.
В последней версии CXXUrl будет содержаться только заголовочный файл.
Если вы хотите узнать больше о curl, посетите http://curl.haxx.se/.
Под лицензией MIT. Автор: xiaozhuai — xiaozhuai7@gmail.com.
Сборка
Используйте cmake для сборки проекта.
$ cd /path/to/cxxurl
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make check # Запустить тестовые случаи
Запуск примеров
После завершения сборки вы можете запустить некоторые примеры.
$ ../example_server/start_server # Чтобы запустить пример, запустите HTTP-сервер (требуется PHP > 5.6)
$ ./example_get
Установка
Просто скопируйте файлы из src/cxxurl
в нужное место!
Примеры и использование
Вы можете найти исходный код всех примеров в каталоге example.
Get
См. examples/example_get.cpp.
Чтобы инициировать запрос GET и получить вывод, это всё, что вам нужно сделать.
Что касается анализа тела, мы предоставляем анализатор JSON.
См. examples/example_parse_json_body.cpp.
Благодарим https://github.com/nlohmann/json.
Вы можете просто изменить contentOutput
на экземпляр класса ofstream
, чтобы завершить загрузку.
См. examples/example_download.cpp.
Если вам нужен вывод заголовков ответа,
см. examples/example_response_header.cpp.
Конечно, мы также предоставляем анализатор.
См. examples/example_parse_response_header.cpp.
Post
Инициирование запроса POST может быть немного сложнее, чем GET, но всё равно это очень просто.
См. examples/example_post.cpp.
CXXUrl предоставляет три типа форм: SimpleForm
, MultipartForm
и RawRequestBody
.
Https
См. examples/example_get_https_enable.cpp.
Для некоторых веб-сайтов вы также можете отключить проверку SSL, например, .verifySSL(false)
.
См. examples/example_get_https_disable.cpp.
Настройка заголовков запросов
Настройка заголовков запросов аналогична использованию форм.
См. examples/example_set_request_header.cpp.
Вы можете установить некоторые часто используемые заголовки, такие как userAgent и referer, с помощью этих методов: .userAgent(...)
и .referer(...)
.
Cookies Давайте поговорим о cookies. Предположим, нам нужно войти на веб-сайт, сохранить cookie успешного входа в файл, а затем включить этот cookie при следующем посещении. См. examples/example_cookie.cpp.
Собственные параметры CURL
Если вы хотите использовать собственные параметры CURL,
см. examples/example_use_curl_option.cpp.
Этот пример полностью эквивалентен первому примеру (GET), но использует .curlOptionString(CURLOPT_URL, "http://xiaozhuai.github.io")
вместо .url("http://xiaozhuai.github.io")
.
RequestBuilder RequestBuilder, как следует из его названия, является просто конструктором. Он предназначен для упрощения кода, и вы можете не использовать его. См. examples/example_without_request_builder.cpp.
Итак, какой способ вам нравится больше?
Спасибо cURL.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )