Light libcurl wrapper for when you need to GET a website with minimum effort.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tastytea 19a65d7474
Add set_maxredirs().
1 week ago
cmake CMake: Add doxygen target: 2 weeks ago
src Add set_maxredirs(). 1 week ago
tests Don't set locale in headers test. 2 weeks ago
.clang-format Add .editorconfig and .clang-format. 2 weeks ago
.drone.yml CI: Don't make install. 2 weeks ago
.editorconfig Add .editorconfig and .clang-format. 2 weeks ago
.gitignore Initial commit. 3 weeks ago
CMakeLists.txt Add set_maxredirs(). 1 week ago
LICENSE Add readme and license. 2 weeks ago
README.adoc Add git-subtree documentation. 2 weeks ago

README.adoc

curl_wrapper

Light libcurl wrapper for when you need to GET a website with minimum effort.

This is not supposed to be a package on its own, but a thing you drop into your project.

I made this because the curl wrapper I used before is no longer maintained and the other wrappers are either incomplete or unmaintained as well. I do not guarantee anything, use at your own risk.

Example program

#include "curl_wrapper.hpp"
#include <iostream>

namespace cw = curl_wrapper;

int main()
{
    cw::CURLWrapper curl;
    const auto answer{curl.make_http_request(cw::http_method::GET,
                                             "http://example.com/")};
    if (answer)
    {
        std::cout << answer;
    }
}

Use with CMake

Drop this project into a subfolder in your project tree. It will be compiled as a static library.

add_subdirectory(curl_wrapper)

add_executable(test)
target_link_libraries(test PRIVATE curl_wrapper)
CMake options:
  • -DWITH_CURL_WRAPPER_TESTS=YES Compiles the tests.

  • -DWITH_CURL_WRAPPER_DOC=YES Generate API reference.

Add with git subtree

Replace src/curl_wrapper with the path you want it to be in. Consult git-subtree(1) for more information.

git remote add curl_wrapper https://schlomp.space/tastytea/curl_wrapper.git
git subtree add --prefix=src/curl_wrapper curl_wrapper main --squash

Update subtree

git subtree pull --prefix=src/curl_wrapper curl_wrapper main --squash

Dependencies