Crate async_tungstenite
source ·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 theasync_tlsmodule, which provides integration with the async-tls TLS stack and can be used independent of any async runtime.async-std-runtime: Enables theasync_stdmodule, which provides integration with the async-std runtime.async-native-tls: Enables the additional functions in theasync_stdmodule to implement TLS via async-native-tls.tokio-runtime: Enables thetokiomodule, which provides integration with the tokio runtime.tokio-native-tls: Enables the additional functions in thetokiomodule to implement TLS via tokio-native-tls.tokio-rustls-native-certs: Enables the additional functions in thetokiomodule 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 thetokiomodule to implement TLS via tokio-rustls and uses the certificates webpki-roots provides.tokio-openssl: Enables the additional functions in thetokiomodule to implement TLS via tokio-openssl.gio-runtime: Enables thegiomodule, 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 as
accept_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 as
accept_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 a
Request. Calling withRequestallows the user to add a WebSocket protocol or other custom headers. - The same as
client_async()but the one can specify a websocket configuration. Please refer toclient_async()for more details.