You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Sebastian Dröge 5c594c0549 Forward handshake errors directly instead of wrapping them in a Other IO error 5 years ago
autobahn test: add autobahn tests 6 years ago
examples Update example to not broadcast close messages. 5 years ago
scripts Refactor features and optional API and add support for tokio/gio async runtimes 5 years ago
src Forward handshake errors directly instead of wrapping them in a Other IO error 5 years ago
tests build(deps): minimize unnecessary dependencies by using `futures-{channel,io,util}` directly instead of `futures` outside of tests/examples 5 years ago
.gitignore Repository created. 8 years ago
.travis.yml travis: force build fail on autobahn failure 5 years ago
Cargo.toml bump version 5 years ago
LICENSE Port/rename to async-std / async-tungstenite 5 years ago
README.md One more link changed 5 years ago

README.md

async-tungstenite

Asynchronous WebSockets for async-std, tokio, gio and any std Futures runtime.

MIT licensed Crates.io Build Status

Documentation

Usage

Add this in your Cargo.toml:

[dependencies]
async-tungstenite = "*"

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

What is async-tungstenite?

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_tls module, which provides integration with the async-tls TLS stack and can be used independent of any async runtime.
  • async-std-runtime: Enables the async_std module, which provides integration with the async-std runtime.
  • async-native-tls: Enables the additional functions in the async_std module to implement TLS via async-native-tls.
  • tokio-runtime: Enables the tokio module, which provides integration with the tokio runtime.
  • tokio-tls: Enables the additional functions in the tokio module to implement TLS via tokio-tls.
  • gio-runtime: Enables the gio module, which provides integration with the gio runtime.

tokio-tungstenite

Originally this crate was created as a fork of tokio-tungstenite and ported to the traits of the futures crate. Integration into async-std, tokio and gio was added on top of that.