pub struct Body { /* fields omitted */ }The body of a Request.
In most cases, this is not needed directly, as the
RequestBuilder.body method uses Into<Body>, which allows
passing many things (like a string or vector of bytes).
Instantiate a Body from a reader.
While allowing for many types to be used, these bodies do not have
a way to reset to the beginning and be reused. This means that when
encountering a 307 or 308 status code, instead of repeating the
request at the new location, the Response will be returned with
the redirect status code set.
let file = File::open("national_secrets.txt")?;
let body = Body::new(file);
If you have a set of bytes, like String or Vec<u8>, using the
From implementations for Body will store the data in a manner
it can be reused.
let s = "A stringy body";
let body = Body::from(s);
Create a Body from a Read where the size is known in advance
but the data should not be fully loaded into memory. This will
set the Content-Length header and stream from the Read.
let file = File::open("a_large_file.txt")?;
let file_size = file.metadata()?.len();
let body = Body::sized(file, file_size);
Formats the value using the given formatter. Read more