pub struct Body { /* private fields */ }Expand description
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).
Implementations
sourceimpl Body
impl Body
sourcepub fn new<R: Read + Send + 'static>(reader: R) -> Body
pub fn new<R: Read + Send + 'static>(reader: R) -> Body
Instantiate a Body from a reader.
Note
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);sourcepub fn sized<R: Read + Send + 'static>(reader: R, len: u64) -> Body
pub fn sized<R: Read + Send + 'static>(reader: R, len: u64) -> Body
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);Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Body
impl Send for Body
impl !Sync for Body
impl Unpin for Body
impl !UnwindSafe for Body
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more