A C++ header-only HTTP/HTTPS server and client library

httplib.h

#http #server #client #header-only #cpp #c++11 #library #small #lightweight

yhirose 98e3e7b3c1 Changed test and README to use the generic lambda. 11 years ago
example 8fc7140e06 added port no. and base dir arguments to simplesvr. 12 years ago
test 98e3e7b3c1 Changed test and README to use the generic lambda. 11 years ago
.gitignore 292d1aeff7 added simplesvr sample. 12 years ago
README.md 98e3e7b3c1 Changed test and README to use the generic lambda. 11 years ago
httplib.h 20fa4ba3b4 added return value to set_base_dir. 12 years ago

README.md

cpp-httplib

A C++11 header-only HTTP library.

The Boost Software License 1.0

It's extremely easy to setup. Just include httplib.h file in your code!

Server Example

Inspired by Sinatra and express.

#include <httplib.h>

int main(void)
{
    using namespace httplib;

    Server svr;

    svr.get("/hi", [](const auto& req, auto& res) {
        res.set_content("Hello World!", "text/plain");
    });

    svr.listen("localhost", 1234);
}

Client Example

#include <httplib.h>
#include <iostream>

int main(void)
{
    httplib::Client cli("localhost", 1234);

    auto res = cli.get("/hi");
    if (res && res->status == 200) {
        std::cout << res->body << std::endl;
    }
}

Copyright (c) 2014 Yuji Hirose. All rights reserved.