Module http::request [−][src]
HTTP request types.
This module contains structs related to HTTP requests, notably the
Request
type itself as well as a builder to create requests. Typically
you'll import the http::Request
type rather than reaching into this
module itself.
Examples
Creating a Request
to send
use http::{Request, Response}; let mut request = Request::builder(); request.uri("https://www.rust-lang.org/") .header("User-Agent", "my-awesome-agent/1.0"); if needs_awesome_header() { request.header("Awesome", "yes"); } let response = send(request.body(()).unwrap()); fn send(req: Request<()>) -> Response<()> { // ... }
Inspecting a request to see what was sent.
use http::{Request, Response, StatusCode}; fn respond_to(req: Request<()>) -> http::Result<Response<()>> { if req.uri() != "/awesome-url" { return Response::builder() .status(StatusCode::NOT_FOUND) .body(()) } let has_awesome_header = req.headers().contains_key("Awesome"); let body = req.body(); // ... }
Structs
Builder |
An HTTP request builder |
Parts |
Component parts of an HTTP |
Request |
Represents an HTTP request. |