# actix_web::http::header::ContentDisposition - Rust
API documentation for the Rust `ContentDisposition` struct in crate `actix_web`.
Keywords: rust, rustlang, rust-lang, ContentDisposition

# Struct actix_web::http::header::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 actix_web::http::header::{ContentDisposition, DispositionType, DispositionParam, Charset};

    let cd1 = 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
        )]
    };

    let cd2 = ContentDisposition {
        disposition: DispositionType::Inline,
        parameters: vec![DispositionParam::Filename(
          Charset::Ext("UTF-8".to_owned()),
          None,
          "\u{2764}".as_bytes().to_vec()
        )]
    };

## Fields

`disposition: DispositionType`

The disposition

`parameters: Vec<DispositionParam>`

Disposition parameters

## Methods

###

`impl ContentDisposition`

[src]

####

`pub fn from_raw(hv: &HeaderValue) -> Result<Self, ParseError>`

[src]

Parse a raw Content-Disposition header value

## Trait Implementations

###

`impl Clone for ContentDisposition`

[src]

####

`fn clone(&self) -> ContentDisposition`

[src]

Returns a copy of the value. Read more

####

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

1.0.0
[src]

Performs copy-assignment from `source`. Read more

###

`impl Debug for ContentDisposition`

[src]

####

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

[src]

Formats the value using the given formatter. Read more

###

`impl PartialEq for ContentDisposition`

[src]

####

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

[src]

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more

####

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

[src]

This method tests for `!=`.

###

`impl Display for ContentDisposition`

[src]

####

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

[src]

Formats the value using the given formatter. Read more

## Auto Trait Implementations

###

`impl Send for ContentDisposition`

###

`impl Sync for ContentDisposition`

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g. `str,u8` or `String,struct:Vec,test`)