pub struct Accept(/* private fields */);Expand description
Accept header, defined in RFC7231
The Accept header field can be used by user agents to specify
response media types that are acceptable. Accept header fields can
be used to indicate that the request is specifically limited to a
small set of desired types, as in the case of a request for an
in-line image
§ABNF
Accept = #( media-range [ accept-params ] )
media-range = ( "*/*"
/ ( type "/" "*" )
/ ( type "/" subtype )
) *( OWS ";" OWS parameter )
accept-params = weight *( accept-ext )
accept-ext = OWS ";" OWS token [ "=" ( token / quoted-string ) ]§Example values
audio/*; q=0.2, audio/basictext/plain; q=0.5, text/html, text/x-dvi; q=0.8, text/x-c
§Examples
use std::iter::FromIterator;
use rama_http_headers::{Accept, specifier::QualityValue, HeaderMapExt};
use rama_http_headers::dep::mime;
let mut headers = rama_http_types::HeaderMap::new();
headers.typed_insert(
Accept::from_iter(vec![
QualityValue::new(mime::TEXT_HTML, Default::default()),
])
);use std::iter::FromIterator;
use rama_http_headers::{Accept, specifier::QualityValue, HeaderMapExt};
use rama_http_headers::dep::mime;
let mut headers = rama_http_types::HeaderMap::new();
headers.typed_insert(
Accept::from_iter(vec![
QualityValue::new(mime::APPLICATION_JSON, Default::default()),
])
);use std::iter::FromIterator;
use rama_http_headers::{Accept, specifier::QualityValue, HeaderMapExt};
use rama_http_headers::dep::mime;
let mut headers = rama_http_types::HeaderMap::new();
headers.typed_insert(
Accept::from_iter(vec![
QualityValue::from(mime::TEXT_HTML),
QualityValue::from("application/xhtml+xml".parse::<mime::Mime>().unwrap()),
QualityValue::new(
mime::TEXT_XML,
900.into()
),
QualityValue::from("image/webp".parse::<mime::Mime>().unwrap()),
QualityValue::new(
mime::STAR_STAR,
800.into()
),
])
);Implementations§
Trait Implementations§
Source§impl FromIterator<QualityValue<Mime>> for Accept
impl FromIterator<QualityValue<Mime>> for Accept
Source§impl Header for Accept
impl Header for Accept
Source§fn name() -> &'static HeaderName
fn name() -> &'static HeaderName
The name of this header.
Source§fn decode<'i, I: Iterator<Item = &'i HeaderValue>>(
values: &mut I,
) -> Result<Self, Error>
fn decode<'i, I: Iterator<Item = &'i HeaderValue>>( values: &mut I, ) -> Result<Self, Error>
Decode this type from an iterator of
HeaderValues.Source§fn encode<E: Extend<HeaderValue>>(&self, values: &mut E)
fn encode<E: Extend<HeaderValue>>(&self, values: &mut E)
Encode this type to a
HeaderValue, and add it to a container
which has HeaderValue type as each element. Read moreSource§fn encode_to_value(&self) -> HeaderValue
fn encode_to_value(&self) -> HeaderValue
Encode this
Header to HeaderValue.impl Eq for Accept
impl StructuralPartialEq for Accept
Auto Trait Implementations§
impl Freeze for Accept
impl RefUnwindSafe for Accept
impl Send for Accept
impl Sync for Accept
impl Unpin for Accept
impl UnwindSafe for Accept
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more