sse-client 1.1.1

Client for streams of Server-Sent Events
Documentation

SSE Client

Documentation Build Status

EventSource implementation in Rust to handle streams of Server-Sent Events. It handles connections, redirections, retries and message parsing.

To know more about SSE: Standard | EventSource interface

Example:

Usage:

extern crate sse_client;
use sse_client::EventSource;


let event_source = EventSource::new("http://event-stream-address/sub").unwrap();

event_source.on_message(|message| {
    println!("New message event {:?}", message);
});

event_source.add_event_listener("error", |error| {
    println!("Error {:?}", error);
});

Or:

extern crate sse_client;
use sse_client::EventSource;

let event_source = EventSource::new("http://event-stream-address/sub").unwrap();

for event in event_source.receiver().iter() {
    println!("New Message: {}", event.data);
}

Cargo features

  • native-tls enables support for HTTPS URLs using native-tls
  • native-tls-vendored will additionally link OpenSSL statically

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.