Skip to content

Commit

Permalink
feat(headers): add last-event-id header
Browse files Browse the repository at this point in the history
Add a Last-Event-ID header to properly work with Server-Sent Events

Addresses # 723
  • Loading branch information
puhrez authored and seanmonstar committed Jul 15, 2016
1 parent e226453 commit e1542a6
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions src/header/common/last-event-id.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
header! {
/// `Last-Event-ID` header, defined in
/// [RFC3864](https://html.spec.whatwg.org/multipage/references.html#refsRFC3864)
///
/// The `Last-Event-ID` header contains information about
/// the last event in an http interaction so that it's easier to
/// track of event state. This is helpful when working
/// with [Server-Sent-Events](http://www.html5rocks.com/en/tutorials/eventsource/basics/). If the connection were to be dropped, for example, it'd
/// be useful to let the server know what the last event you
/// recieved was.
///
/// The spec is a String with the id of the last event, it can be
/// an empty string which acts a sort of "reset".
///
/// # Example
/// ```
/// use hyper::header::{Headers, LastEventID};
///
/// let mut headers = Headers::new();
/// headers.set(LastEventID("1".to_owned()));
/// ```
(LastEventID, "Last-Event-ID") => [String]

test_last_event_id {
// Initial state
test_header!(test1, vec![b""]);
// Own testcase
test_header!(test2, vec![b"1"], Some(LastEventID("1".to_owned())));
}
}

0 comments on commit e1542a6

Please sign in to comment.