Module content

Source
Expand description

HTTP Content headers.

These headers are used for “content negotiation”: the client shares information about which content it prefers, and the server responds by sharing which content it’s chosen to share. This enables clients to receive resources with the best available compression, in the preferred language, and more.

§Further Reading

§Examples

use http_types::content::{Accept, MediaTypeProposal};
use http_types::{mime, Response};

let mut accept = Accept::new();
accept.push(MediaTypeProposal::new(mime::HTML, Some(0.8))?);
accept.push(MediaTypeProposal::new(mime::XML, Some(0.4))?);
accept.push(mime::PLAIN);

let mut res = Response::new(200);
let content_type = accept.negotiate(&[mime::XML])?;
content_type.apply(&mut res);

assert_eq!(res["Content-Type"], "application/xml;charset=utf-8");

Modules§

accept
Client header advertising which media types the client is able to understand.
accept_encoding
Client header advertising available compression algorithms.
content_encoding
Specify the compression algorithm.

Structs§

Accept
Client header advertising which media types the client is able to understand.
AcceptEncoding
Client header advertising available compression algorithms.
ContentEncoding
Specify the compression algorithm.
ContentLength
The size of the entity-body, in bytes, sent to the recipient.
ContentLocation
Indicates an alternate location for the returned data.
ContentType
Indicate the media type of a resource’s content.
EncodingProposal
A proposed Encoding in AcceptEncoding.
MediaTypeProposal
A proposed Media Type for the Accept header.

Enums§

Encoding
Available compression algorithms.