Bitcoin Forum

Other => Off-topic => Topic started by: misterbigg on May 12, 2016, 11:28:20 AM



Title: Beast: WebSockets, HTTP
Post by: misterbigg on May 12, 2016, 11:28:20 AM
"Beast"

This is a new open source 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:

http::message (http://vinniefalco.github.io/beast/beast/ref/http__message.html)
class template modeling the HTTP message with customization points to satisfy even the most tough-minded reviewer.

http::read (http://vinniefalco.github.io/beast/beast/ref/http__read/overload1.html)
http::write (http://vinniefalco.github.io/beast/beast/ref/http__write/overload1.html)
http::async_read (http://vinniefalco.github.io/beast/beast/ref/http__async_read.html)
http::async_write (http://vinniefalco.github.io/beast/beast/ref/http__async_write.html)

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::stream (http://vinniefalco.github.io/beast/beast/ref/websocket__stream.html)
class template wrapping any asio sync or async stream. Implements the WebSocket protocol including the initial handshake.

Examples:
* websocket echo servers
* HTTP servers for simple websites (no cgi)

"I've heard enough, show me example code!"
http://vinniefalco.github.io/beast/beast/intro/example.html

Main page, with links to GitHub repository, HTML documentation and benchmarks:
http://vinniefalco.github.io/

Feedback welcome, the author checks email and Issues on the GitHub repository. This project has been submitted to the Boost incubator.


Title: Re: Beast: WebSockets, HTTP
Post by: 2c0de on May 12, 2016, 04:54:45 PM
Great stuff, the web socket support is especially good to have in this day and age.