websocketpp

Peter Thorson's websocketpp connects your application to the most popular protocol on earth (http) plus websockets. The range of possible applications spans from http clients to complex websocket based servers.

The library makes heavy use of template policies, i.e. you specify the network backend (you can choose asio), or implement your own back end, mix an existing with your own event loop. This is all done at compile time, by specifying a config struct.

I haven't seen any other library yet which is that flexible, and Peter has done a great job in abstracting away dependencies from other libraries here. However, it can be a major mess to program with it, since most IDEs get confused of chains of typedef's that cycle forth and back between several files in the implementation, and documentation is not overly helpful when you start using it.

However, the library is making an excellent job in also hiding away the complexity which is taking beyond the scenes, and providing an interface which is almost immediately able to do the dirty work, and enables you to focus on your work.

Author Blurb

> WebSocket++ is a header only C++ library that implements RFC6455 The WebSocket Protocol. It allows integrating WebSocket client and server functionality into C++ programs. It uses interchangeable network transport modules including one based on raw char buffers, one based on C++ iostreams, and one based on Asio (either via Boost or standalone). End users can write additional transport policies to support other networking or event libraries as needed.

What I like

What I don't like

Roman's Rating: 4.1/5

Information