Enum hyper::header::IfRange
[−]
[src]
pub enum IfRange { EntityTag(EntityTag), Date(HttpDate), }
If-Range
header, defined in RFC7233
If a client has a partial copy of a representation and wishes to have an up-to-date copy of the entire representation, it could use the Range header field with a conditional GET (using either or both of If-Unmodified-Since and If-Match.) However, if the precondition fails because the representation has been modified, the client would then have to make a second request to obtain the entire current representation.
The If-Range
header field allows a client to "short-circuit" the
second request. Informally, its meaning is as follows: if the
representation is unchanged, send me the part(s) that I am requesting
in Range; otherwise, send me the entire representation.
ABNF
If-Range = entity-tag / HTTP-date
Example values
Sat, 29 Oct 1994 19:43:31 GMT
\"xyzzy\"
Examples
use hyper::header::{Headers, IfRange, EntityTag}; let mut headers = Headers::new(); headers.set(IfRange::EntityTag(EntityTag::new(false, "xyzzy".to_owned())));
// extern crate time; use hyper::header::{Headers, IfRange, HttpDate}; use time::{self, Duration}; let mut headers = Headers::new(); headers.set(IfRange::Date(HttpDate(time::now() - Duration::days(1))));
Variants
EntityTag | The entity-tag the client has of the resource |
Date | The date when the client retrieved the resource |