Expand description
Async WebSockets.
This crate is based on tungstenite
Rust WebSocket library and provides async bindings and wrappers for it, so you
can use it with non-blocking/asynchronous TcpStreams from and couple it
together with other crates from the async stack. In addition, optional
integration with various other crates can be enabled via feature flags
- async-tls: Enables the- async_tlsmodule, which provides integration with the async-tls TLS stack and can be used independent of any async runtime.
- async-std-runtime: Enables the- async_stdmodule, which provides integration with the async-std runtime.
- async-native-tls: Enables the additional functions in the- async_stdmodule to implement TLS via async-native-tls.
- tokio-runtime: Enables the- tokiomodule, which provides integration with the tokio runtime.
- tokio-native-tls: Enables the additional functions in the- tokiomodule to implement TLS via tokio-native-tls.
- tokio-rustls-native-certs: Enables the additional functions in the- tokiomodule to implement TLS via tokio-rustls and uses native system certificates found with rustls-native-certs.
- tokio-rustls-webpki-roots: Enables the additional functions in the- tokiomodule to implement TLS via tokio-rustls and uses the certificates webpki-roots provides.
- tokio-openssl: Enables the additional functions in the- tokiomodule to implement TLS via tokio-openssl.
- gio-runtime: Enables the- giomodule, which provides integration with the gio runtime.
Each WebSocket stream implements the required Stream and Sink traits,
making the socket a stream of WebSocket messages coming in and going out.
Re-exports§
- pub use tungstenite;
Modules§
- async-stdintegration.
- async-tlsintegration.
- giointegration.
- Convenience wrapper for streams to switch between plain TCP and TLS at runtime.
- tokiointegration.
Structs§
- A wrapper around an underlying raw stream which implements the WebSocket protocol.
Functions§
- Accepts a new WebSocket connection with the provided stream.
- The same asaccept_async()but the one can specify a websocket configuration. Please refer toaccept_async()for more details.
- Accepts a new WebSocket connection with the provided stream.
- The same asaccept_hdr_async()but the one can specify a websocket configuration. Please refer toaccept_hdr_async()for more details.
- Creates a WebSocket handshake from a request and a stream. For convenience, the user may call this with a url string, a URL, or aRequest. Calling withRequestallows the user to add a WebSocket protocol or other custom headers.
- The same asclient_async()but the one can specify a websocket configuration. Please refer toclient_async()for more details.