7 releases (stable)
Uses old Rust 2015
1.1.1 | Mar 26, 2020 |
---|---|
1.1.0 | Jan 20, 2020 |
1.0.1 | Dec 13, 2019 |
1.0.0 | Oct 4, 2018 |
0.1.0 | Aug 25, 2018 |
#9 in #event-source
171 downloads per month
Used in 2 crates
60KB
1.5K
SLoC
SSE Client
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-tlsnative-tls-vendored
will additionally link OpenSSL statically
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE)
- MIT license (LICENSE-MIT)
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.
Dependencies
~1–10MB
~136K SLoC