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(EntityTag)
The entity-tag the client has of the resource
Date(HttpDate)
The date when the client retrieved the resource
Trait Implementations
impl Clone for IfRange
[src]
fn clone(&self) -> IfRange
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Debug for IfRange
[src]
impl PartialEq for IfRange
[src]
fn eq(&self, __arg_0: &IfRange) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &IfRange) -> bool
This method tests for !=
.
impl Header for IfRange
[src]
fn header_name() -> &'static str
Returns the name of the header field this belongs to. Read more
fn parse_header(raw: &[Vec<u8>]) -> Result<IfRange>
Parse a header from a raw stream of bytes. Read more
impl HeaderFormat for IfRange
[src]
fn fmt_header(&self, f: &mut Formatter) -> Result
Format a header to be output into a TcpStream. Read more