Struct iron::headers::ContentDisposition [] [src]

pub struct ContentDisposition {
    pub disposition: DispositionType,
    pub parameters: Vec<DispositionParam>,
}

A Content-Disposition header, (re)defined in RFC6266

The Content-Disposition response header field is used to convey additional information about how to process the response payload, and also can be used to attach additional metadata, such as the filename to use when saving the response payload locally.

ABNF

content-disposition = "Content-Disposition" ":"
                      disposition-type *( ";" disposition-parm )

disposition-type    = "inline" | "attachment" | disp-ext-type
                      ; case-insensitive

disp-ext-type       = token

disposition-parm    = filename-parm | disp-ext-parm

filename-parm       = "filename" "=" value
                    | "filename*" "=" ext-value

disp-ext-parm       = token "=" value
                    | ext-token "=" ext-value

ext-token           = <the characters in token, followed by "*">

Example

use hyper::header::{Headers, ContentDisposition, DispositionType, DispositionParam, Charset};

let mut headers = Headers::new();
headers.set(ContentDisposition {
    disposition: DispositionType::Attachment,
    parameters: vec![DispositionParam::Filename(
      Charset::Iso_8859_1, // The character set for the bytes of the filename
      None, // The optional language tag (see `language-tag` crate)
      b"\xa9 Copyright 1989.txt".to_vec() // the actual bytes of the filename
    )]
});

Fields

disposition

The disposition

parameters

Disposition parameters

Trait Implementations

impl Header for ContentDisposition

fn header_name() -> &'static str

fn parse_header(raw: &[Vec<u8>]) -> Result<ContentDisposition, Error>

impl HeaderFormat for ContentDisposition

fn fmt_header(&self, f: &mut Formatter) -> Result<(), Error>

impl Display for ContentDisposition

fn fmt(&self, f: &mut Formatter) -> Result<(), Error>

Derived Implementations

impl PartialEq<ContentDisposition> for ContentDisposition

fn eq(&self, __arg_0: &ContentDisposition) -> bool

fn ne(&self, __arg_0: &ContentDisposition) -> bool

impl Debug for ContentDisposition

fn fmt(&self, __arg_0: &mut Formatter) -> Result<(), Error>

impl Clone for ContentDisposition

fn clone(&self) -> ContentDisposition

fn clone_from(&mut self, source: &Self)