Struct glitch_in_the_matrix::http::ContentType
[−]
[src]
pub struct ContentType(pub Mime);
Content-Type
header, defined in
RFC7231
The Content-Type
header field indicates the media type of the
associated representation: either the representation enclosed in the
message payload or the selected representation, as determined by the
message semantics. The indicated media type defines both the data
format and how that data is intended to be processed by a recipient,
within the scope of the received message semantics, after any content
codings indicated by Content-Encoding are decoded.
Although the mime
crate allows the mime options to be any slice, this crate
forces the use of Vec. This is to make sure the same header can't have more than 1 type. If
this is an issue, it's possible to implement Header
on a custom struct.
ABNF
Content-Type = media-type
Example values
text/html; charset=utf-8
application/json
Examples
use hyper::header::{Headers, ContentType}; let mut headers = Headers::new(); headers.set( ContentType::json() );
use hyper::header::{Headers, ContentType}; use hyper::mime; let mut headers = Headers::new(); headers.set( ContentType(mime::TEXT_HTML) );
Methods
impl ContentType
[src]
fn json() -> ContentType
A constructor to easily create a Content-Type: application/json
header.
fn plaintext() -> ContentType
A constructor to easily create a Content-Type: text/plain; charset=utf-8
header.
fn html() -> ContentType
A constructor to easily create a Content-Type: text/html; charset=utf-8
header.
fn form_url_encoded() -> ContentType
A constructor to easily create a Content-Type: application/www-form-url-encoded
header.
fn jpeg() -> ContentType
A constructor to easily create a Content-Type: image/jpeg
header.
fn png() -> ContentType
A constructor to easily create a Content-Type: image/png
header.
fn octet_stream() -> ContentType
A constructor to easily create a Content-Type: application/octet-stream
header.
Methods from Deref<Target = Mime>
fn type_(&self) -> Name
Get the top level media type for this Mime
.
Example
let mime = mime::TEXT_PLAIN; assert_eq!(mime.type_(), "text"); assert_eq!(mime.type_(), mime::TEXT);
fn subtype(&self) -> Name
Get the subtype of this Mime
.
Example
let mime = mime::TEXT_PLAIN; assert_eq!(mime.subtype(), "plain"); assert_eq!(mime.subtype(), mime::PLAIN);
fn suffix(&self) -> Option<Name>
Get an optional +suffix for this Mime
.
Example
let svg = "image/svg+xml".parse::<mime::Mime>().unwrap(); assert_eq!(svg.suffix(), Some(mime::XML)); assert_eq!(svg.suffix().unwrap(), "xml"); assert!(mime::TEXT_PLAIN.suffix().is_none());
fn get_param<'a, N>(&'a self, attr: N) -> Option<Name<'a>> where
N: PartialEq<Name<'a>>,
N: PartialEq<Name<'a>>,
Look up a parameter by name.
Example
let mime = mime::TEXT_PLAIN_UTF_8; assert_eq!(mime.get_param(mime::CHARSET), Some(mime::UTF_8)); assert_eq!(mime.get_param("charset").unwrap(), "utf-8"); assert!(mime.get_param("boundary").is_none()); let mime = "multipart/form-data; boundary=ABCDEFG".parse::<mime::Mime>().unwrap(); assert_eq!(mime.get_param(mime::BOUNDARY).unwrap(), "ABCDEFG");
Trait Implementations
impl Clone for ContentType
[src]
fn clone(&self) -> ContentType
impl Display for ContentType
[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter. Read more
impl DerefMut for ContentType
[src]
impl PartialEq<ContentType> for ContentType
[src]
fn eq(&self, __arg_0: &ContentType) -> bool
fn ne(&self, __arg_0: &ContentType) -> bool
impl Header for ContentType
[src]
fn header_name() -> &'static str
fn parse_header(raw: &Raw) -> Result<ContentType, Error>
fn fmt_header(&self, f: &mut Formatter) -> Result<(), Error>
impl Deref for ContentType
[src]
type Target = Mime
The resulting type after dereferencing
fn deref(&self) -> &Mime
The method called to dereference a value