As you can see, reqwest's Response struct implements Rust's
Read trait, so many useful standard library and third party crates will
have convenience methods that take a Response anywhere T: Read is
acceptable.

If you plan to perform multiple requests, it is best to create a Client
and reuse it, taking advantage of keep-alive connection pooling.

There are several ways you can set the body of a request. The basic one is
by using the body() method of a RequestBuilder. This lets you set the
exact raw bytes of what the body should be. It accepts various types,
including String, Vec<u8>, and File. If you wish to pass a custom
Reader, you can use the reqwest::Body::new() constructor.