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

httplib.h

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

yhirose 8fc7140e06 added port no. and base dir arguments to simplesvr. 12 years ago
example 8fc7140e06 added port no. and base dir arguments to simplesvr. 12 years ago
test 20fa4ba3b4 added return value to set_base_dir. 12 years ago
.gitignore 292d1aeff7 added simplesvr sample. 12 years ago
README.md e8a18ad447 Removed Connection class. 13 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 Request& req, Response& 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) 2012 Yuji Hirose. All rights reserved.