Struct actix_web::http::header::ContentType
source · 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§
source§impl 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§
source§impl Clone for ContentType
impl Clone for ContentType
source§fn clone(&self) -> ContentType
fn clone(&self) -> ContentType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ContentType
impl Debug for ContentType
source§impl Deref for ContentType
impl Deref for ContentType
source§impl DerefMut for ContentType
impl DerefMut for ContentType
source§impl Display for ContentType
impl Display for ContentType
source§impl Header for ContentType
impl Header for ContentType
source§fn name() -> HeaderName
fn name() -> HeaderName
source§fn parse<M: HttpMessage>(msg: &M) -> Result<Self, ParseError>
fn parse<M: HttpMessage>(msg: &M) -> Result<Self, ParseError>
source§impl PartialEq<ContentType> for ContentType
impl PartialEq<ContentType> for ContentType
source§fn eq(&self, other: &ContentType) -> bool
fn eq(&self, other: &ContentType) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl TryIntoHeaderValue for ContentType
impl TryIntoHeaderValue for ContentType
§type Error = InvalidHeaderValue
type Error = InvalidHeaderValue
source§fn try_into_value(self) -> Result<HeaderValue, Self::Error>
fn try_into_value(self) -> Result<HeaderValue, Self::Error>
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§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.