pub struct ContentType(pub Mime);
Expand description
Content-Type
header, defined
in RFC 7231 §3.1.1.5
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 actix_web::HttpResponse;
use actix_web::http::header::ContentType;
let mut builder = HttpResponse::Ok();
builder.insert_header(
ContentType::json()
);
use actix_web::HttpResponse;
use actix_web::http::header::ContentType;
let mut builder = HttpResponse::Ok();
builder.insert_header(
ContentType(mime::TEXT_HTML)
);
Tuple Fields
0: Mime
Implementations
sourceimpl ContentType
impl ContentType
sourcepub fn json() -> ContentType
pub fn json() -> ContentType
A constructor to easily create a Content-Type: application/json
header.
sourcepub fn plaintext() -> ContentType
pub fn plaintext() -> ContentType
A constructor to easily create a Content-Type: text/plain; charset=utf-8
header.
sourcepub fn html() -> ContentType
pub fn html() -> ContentType
A constructor to easily create a Content-Type: text/html; charset=utf-8
header.
sourcepub fn xml() -> ContentType
pub fn xml() -> ContentType
A constructor to easily create a Content-Type: text/xml
header.
sourcepub fn form_url_encoded() -> ContentType
pub fn form_url_encoded() -> ContentType
A constructor to easily create a Content-Type: application/www-form-url-encoded
header.
sourcepub fn jpeg() -> ContentType
pub fn jpeg() -> ContentType
A constructor to easily create a Content-Type: image/jpeg
header.
sourcepub fn png() -> ContentType
pub fn png() -> ContentType
A constructor to easily create a Content-Type: image/png
header.
sourcepub fn octet_stream() -> ContentType
pub fn octet_stream() -> ContentType
A constructor to easily create a Content-Type: application/octet-stream
header.
Methods from Deref<Target = Mime>
sourcepub fn type_(&self) -> Name<'_>
pub 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);
sourcepub fn subtype(&self) -> Name<'_>
pub 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);
sourcepub fn suffix(&self) -> Option<Name<'_>>
pub 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());
sourcepub fn get_param<'a, N>(&'a self, attr: N) -> Option<Name<'a>> where
N: PartialEq<Name<'a>>,
pub fn get_param<'a, N>(&'a self, attr: N) -> Option<Name<'a>> where
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");
sourcepub fn essence_str(&self) -> &str
pub fn essence_str(&self) -> &str
Return a &str
of the Mime’s “essence”.
Trait Implementations
sourceimpl Clone for ContentType
impl Clone for ContentType
sourcefn clone(&self) -> ContentType
fn clone(&self) -> ContentType
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ContentType
impl Debug for ContentType
sourceimpl Deref for ContentType
impl Deref for ContentType
sourceimpl DerefMut for ContentType
impl DerefMut for ContentType
sourceimpl Display for ContentType
impl Display for ContentType
sourceimpl Header for ContentType
impl Header for ContentType
sourcefn name() -> HeaderName
fn name() -> HeaderName
Returns the name of the header field
sourcefn parse<M: HttpMessage>(msg: &M) -> Result<Self, ParseError>
fn parse<M: HttpMessage>(msg: &M) -> Result<Self, ParseError>
Parse a header
sourceimpl PartialEq<ContentType> for ContentType
impl PartialEq<ContentType> for ContentType
sourcefn eq(&self, other: &ContentType) -> bool
fn eq(&self, other: &ContentType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &ContentType) -> bool
fn ne(&self, other: &ContentType) -> bool
This method tests for !=
.
sourceimpl TryIntoHeaderValue for ContentType
impl TryIntoHeaderValue for ContentType
type Error = InvalidHeaderValue
type Error = InvalidHeaderValue
The type returned in the event of a conversion error.
sourcefn try_into_value(self) -> Result<HeaderValue, Self::Error>
fn try_into_value(self) -> Result<HeaderValue, Self::Error>
Try to convert value to a HeaderValue.
impl Eq for ContentType
impl StructuralEq for ContentType
impl StructuralPartialEq for ContentType
Auto Trait Implementations
impl RefUnwindSafe for ContentType
impl Send for ContentType
impl Sync for ContentType
impl Unpin for ContentType
impl UnwindSafe for ContentType
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> TryIntoHeaderPair for T where
T: Header,
impl<T> TryIntoHeaderPair for T where
T: Header,
type Error = <T as TryIntoHeaderValue>::Error
fn try_into_pair(
self
) -> Result<(HeaderName, HeaderValue), <T as TryIntoHeaderPair>::Error>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more