Simple boost asio based sync and async http client and http and https server
C C++ Python
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
External
jrb_node_msvc_solution
.gitignore
README.txt
jrb.cer
jrb.pkey
jrb_node.cpp
jrb_node.h
jrb_node_name_value.h
main.cpp

README.txt

WHAT IS JRB NODE

This is a C++11 library that provides a boost.asio based sync and async http client and server 
http and https (via openssl) are supported in both the client and the server

The http_parser library from joyent is used to parse http (https://github.com/joyent/http-parser/)

RATIONALE

Currently there is no boost asio https server open source library. I wanted to see if I could make a simple library.
I re-used http_parser so that I did not have to debug async parsing of http
Then I built up templated classes to handle reading http requests into headers and body and reused those classes


LICENSE

Boost license for jrb_node

MIT license of http_parser

USING

Needs boost and boost asio and boost threads. Tested with boost 1.49
Openssl needs to be linked unless JRB_NODE_NO_SSL is defined

Include jrb_node.cpp http_parser.cpp in your project and include jrb_node.h 

An example program is provided in main.cpp

all components are in namespace jrb_node

An example jrb certificate and key (self signed for localhost) are used for the example program

COMPILERS
Compiles and runs with MSVC 2012 RC and mingw gcc 4.7.1 (nuwen.net distro)