Enum reqwest::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

The entity-tag the client has of the resource

The date when the client retrieved the resource

Trait Implementations

impl Header for IfRange

Returns the name of the header field this belongs to. Read more

Parse a header from a raw stream of bytes. Read more

impl Debug for IfRange

Formats the value using the given formatter.

impl Clone for IfRange

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl HeaderFormat for IfRange

Format a header to be output into a TcpStream. Read more

impl PartialEq<IfRange> for IfRange

impl Display for IfRange

Formats the value using the given formatter.