[−][src]Trait chttp::ResponseExt
Provides extension methods for working with HTTP responses.
Required methods
fn copy_to(&mut self, writer: impl Write) -> Result<u64> where
T: Read,
T: Read,
Copy the response body into a writer.
Returns the number of bytes that were written.
fn text(&mut self) -> Result<String, Error> where
T: Read,
T: Read,
Get the response body as a string.
This method consumes the entire response body stream and can only be called once, unless you can rewind this response body.
Examples
use chttp::prelude::*; let text = chttp::get("https://example.org")?.text()?; println!("{}", text);
fn text_async(&mut self) -> Text<T> where
T: AsyncRead + Unpin,
T: AsyncRead + Unpin,
Get the response body as a string asynchronously.
This method consumes the entire response body stream and can only be called once, unless you can rewind this response body.
fn json<D>(&mut self) -> Result<D, Error> where
D: DeserializeOwned,
T: Read,
D: DeserializeOwned,
T: Read,
Deserialize the response body as JSON into a given type.
Examples
use chttp::prelude::*; use serde_json::Value; let json: Value = chttp::get("https://httpbin.org/json")?.json()?; println!("author: {}", json["slideshow"]["author"]);
Provided methods
fn copy_to_file(&mut self, path: impl AsRef<Path>) -> Result<u64> where
T: Read,
T: Read,
Write the response body to a file.
This method makes it convenient to download a file using a GET request and write it to a file synchronously in a single chain of calls.
Returns the number of bytes that were written.
Examples
use chttp::prelude::*; chttp::get("https://httpbin.org/image/jpeg")? .copy_to_file("myimage.jpg")?;