1
0
Fork 0
mirror of https://gitlab.com/msrd0/gotham-restful.git synced 2025-02-23 04:52:28 +00:00

fix documentation for accept header matcher

This commit is contained in:
Dominic 2020-04-25 20:45:39 +02:00
parent 805df80971
commit 96317cdfb7
Signed by: msrd0
GPG key ID: DCC8C247452E98F9

View file

@ -59,25 +59,28 @@ impl FromStr for QMime
/** /**
A route matcher that checks for the presence of a supported content type. A route matcher that checks whether the supported types match the accept header of the request.
Usage: Usage:
``` ```
# use gotham::{helpers::http::response::create_response, hyper::StatusCode, router::builder::*}; # use gotham::{helpers::http::response::create_response, hyper::StatusCode, router::builder::*};
# use gotham_restful::matcher::ContentTypeMatcher; # use gotham_restful::matcher::AcceptHeaderMatcher;
# #
let types = vec![mime::TEXT_HTML, mime::TEXT_PLAIN]; # const img_content : &[u8] = b"This is the content of a webp image";
let matcher = ContentTypeMatcher::new(types) #
// optionally accept requests with no content type # let IMAGE_WEBP : mime::Mime = "image/webp".parse().unwrap();
.allow_no_type(); let types = vec![IMAGE_WEBP];
let matcher = AcceptHeaderMatcher::new(types);
# build_simple_router(|route| { # build_simple_router(|route| {
// use the matcher for your request // use the matcher for your request
route.post("/foo") route.post("/foo")
.extend_route_matcher(matcher) .extend_route_matcher(matcher)
.to(|state| { .to(|state| {
let res = create_response(&state, StatusCode::OK, mime::TEXT_PLAIN, "Correct Content Type!"); // we know that the client is a modern browser and can handle webp images
# let IMAGE_WEBP : mime::Mime = "image/webp".parse().unwrap();
let res = create_response(&state, StatusCode::OK, IMAGE_WEBP, img_content);
(state, res) (state, res)
}); });
# }); # });