1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
//! Client for the [Server-Sent Events] protocol (aka [EventSource]). //! //! ``` //! use eventsource_client::Client; //! # use futures::{lazy, future::Future, stream::Stream}; //! //! # fn main() -> Result<(), eventsource_client::Error> { //! let mut client = Client::for_url("https://example.com/stream")? //! .header("Authorization", "Basic username:password")? //! .build(); //! //! # tokio::run(lazy(move || { //! client.stream() //! .for_each(|event| { //! Ok(println!("got an event: {}", event.event_type)) //! }) //! .map_err(|e| println!("error streaming events: {:?}", e)); //! # Ok(()) //! # })); //! # Ok(()) //! # } //! ``` //! //![Server-Sent Events]: https://html.spec.whatwg.org/multipage/server-sent-events.html //![EventSource]: https://developer.mozilla.org/en-US/docs/Web/API/EventSource #[macro_use] extern crate futures; #[macro_use] extern crate log; #[cfg(test)] #[macro_use] extern crate maplit; mod client; pub use client::*; #[cfg(test)] mod tests { #[test] fn it_works() { assert_eq!(2 + 2, 4); } }