This is a new library that implements the HTTP and WebSocket protocols using Boost.Asio and a few other Boost tidbits. Here’s a quick synopsis of what’s in it:
- class template wrapping any asio sync or async stream. Implements the WebSocket protocol including the initial handshake.
- class template modeling the HTTP message with customization points to satisfy even the most tough-minded Boost reviewer.
- Free functions to easily send and receive HTTP messages. Modeled to work exactly like boost::asio free functions. Role-agnostic, build clients or servers!
- websocket echo servers
- HTTP servers for simple websites (no cgi)
What’s cool about this library is that it exposes the HTTP implementation so you can use it as a building block. It adheres to Boost.Asio best practices and offers a lot of implementation flexibility while maintaining a very lean interface.
“I’ve heard enough, show me example code!”
Main page, with the source code and links to everything:
Feedback welcome, the author checks email and Issues on the GitHub repository. This project has been submitted to the Boost incubator.