#web #io #client-server #async

tokio-tungstenite_wasi

Tokio binding for Tungstenite, the Lightweight stream-based WebSocket implementation

1 unstable release

0.18.0 Feb 4, 2023

#249 in WebSocket

Download history 5/week @ 2024-01-29 15/week @ 2024-02-12 8/week @ 2024-02-19 28/week @ 2024-02-26 15/week @ 2024-03-04 24/week @ 2024-03-11 2/week @ 2024-03-18 7/week @ 2024-03-25 43/week @ 2024-04-01 39/week @ 2024-04-08 4/week @ 2024-04-15 15/week @ 2024-04-22

102 downloads per month
Used in warp_wasi

MIT license

50KB
923 lines

tokio-tungstenite

Asynchronous WebSockets for Tokio stack.

MIT licensed Crates.io Build Status

Documentation

Usage

Add this in your Cargo.toml:

[dependencies]
tokio-tungstenite = "*"

Take a look at the examples/ directory for client and server examples. You may also want to get familiar with Tokio if you don't have any experience with it.

What is tokio-tungstenite?

This crate is based on tungstenite-rs Rust WebSocket library and provides Tokio bindings and wrappers for it, so you can use it with non-blocking/asynchronous TcpStreams from and couple it together with other crates from Tokio stack.

Features

As with tungstenite-rs TLS is supported on all platforms using native-tls or rustls through feature flags: native-tls, rustls-tls-native-roots or rustls-tls-webpki-roots feature flags. Neither is enabled by default. See the Cargo.toml for more information. If you require support for secure WebSockets (wss://) enable one of them.

Dependencies

~4–19MB
~274K SLoC