#rustls #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

#324 in WebSocket

Download history 1/week @ 2024-11-13 3/week @ 2024-11-20 10/week @ 2024-11-27 27/week @ 2024-12-04 38/week @ 2024-12-11 8/week @ 2024-12-18 4/week @ 2025-01-01 13/week @ 2025-01-08 25/week @ 2025-01-15 15/week @ 2025-01-22 3/week @ 2025-01-29 33/week @ 2025-02-05 19/week @ 2025-02-12 6/week @ 2025-02-19 20/week @ 2025-02-26

79 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
~294K SLoC