You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@avro.apache.org by svante karlsson <sa...@csi.se> on 2014/04/26 18:02:55 UTC

c++11 http client and server library

I've started to work on a c++ library that I intend to use for performing
avro encoded rest calls. If/when I understand how to implement avro rpc it
should be simple enough to extend the existing code base to that as well.

The client is implemented using libcurl and boost asio.

The server is based on some of the boost asio samples but using
Joyents/NGINX http parser.

The client has both async and sync methods and http 1.1 is (partially?)
supported. connection:keep-alive is implemented.

The code that I based this on supported openssl as well but I have not yet
completed that part. Fragments are there

I've noticed that the existing avrogencpp can't be used for avro-rpc specs
- anyone that can share some light on how it's supposed to be implemented?

Should be portable and currently runs on ubuntu 13.10 and windows.
(currently adding raspberry support)

All included code should be in various state of opensource and my own
contributions are distributed with boost license.

The documentation is sparse but there are some examples that's rather
simple.

dependencies
boost
avrocpp
libcurl
cmake
C++11  (tested with gcc & visual studio 2013)

code can be found here https://github.com/bitbouncer/csi-http


Comments most welcome.

/svante