3 releases

Uses old Rust 2015

0.0.3 Nov 22, 2017
0.0.2 Oct 23, 2017
0.0.1 Sep 25, 2017

#298 in WebSocket

Download history 161/week @ 2024-07-22 158/week @ 2024-07-29 120/week @ 2024-08-05 232/week @ 2024-08-12 148/week @ 2024-08-19 121/week @ 2024-08-26 152/week @ 2024-09-02 142/week @ 2024-09-09 128/week @ 2024-09-16 194/week @ 2024-09-23 131/week @ 2024-09-30 120/week @ 2024-10-14 120/week @ 2024-10-21 156/week @ 2024-10-28 120/week @ 2024-11-04

516 downloads per month

MIT license

205KB
4K SLoC

Rust-WebSocket is a WebSocket (RFC6455) library written in Rust.

Synchronous and Asynchronous

This crate has both async and sync implementations of websockets, you are free to choose which one you would like to use by switching on the async or sync features for this crate. By default both are switched on since they do not conflict with each other.

You'll find many modules with ::sync and ::async submodules that separate these behaviours. Since it get's tedious to add these on when appropriate a top-level convenience module called websocket::sync and websocket::async has been added that groups all the sync and async stuff, respectively.

Clients

To make a client use the ClientBuilder struct, this builder has methods for creating both synchronous and asynchronous clients.

Servers

WebSocket servers act similarly to the TcpListener, and listen for connections. See the Server struct documentation for more information. The bind() and bind_secure() functions will bind the server to the given SocketAddr.

Extending Rust-WebSocket

The ws module contains the traits and functions used by Rust-WebSocket at a lower level. Their usage is explained in the module documentation.

Dependencies

~5–14MB
~177K SLoC