Struct reqwest::async::RequestBuilder
source · [−]pub struct RequestBuilder { /* private fields */ }
Expand description
A builder to construct the properties of a Request
.
Implementations
sourceimpl RequestBuilder
impl RequestBuilder
sourcepub fn header<K, V>(self, key: K, value: V) -> RequestBuilder where
HeaderName: HttpTryFrom<K>,
HeaderValue: HttpTryFrom<V>,
pub fn header<K, V>(self, key: K, value: V) -> RequestBuilder where
HeaderName: HttpTryFrom<K>,
HeaderValue: HttpTryFrom<V>,
Add a Header
to this Request.
sourcepub fn headers(self, headers: HeaderMap) -> RequestBuilder
pub fn headers(self, headers: HeaderMap) -> RequestBuilder
Add a set of Headers to the existing ones on this Request.
The headers will be merged in to any already set.
sourcepub fn basic_auth<U, P>(
self,
username: U,
password: Option<P>
) -> RequestBuilder where
U: Display,
P: Display,
pub fn basic_auth<U, P>(
self,
username: U,
password: Option<P>
) -> RequestBuilder where
U: Display,
P: Display,
Enable HTTP basic authentication.
sourcepub fn bearer_auth<T>(self, token: T) -> RequestBuilder where
T: Display,
pub fn bearer_auth<T>(self, token: T) -> RequestBuilder where
T: Display,
Enable HTTP bearer authentication.
sourcepub fn body<T: Into<Body>>(self, body: T) -> RequestBuilder
pub fn body<T: Into<Body>>(self, body: T) -> RequestBuilder
Set the request body.
sourcepub fn multipart(self, multipart: Form) -> RequestBuilder
pub fn multipart(self, multipart: Form) -> RequestBuilder
Sends a multipart/form-data body.
let client = reqwest::async::Client::new();
let form = reqwest::async::multipart::Form::new()
.text("key3", "value3")
.text("key4", "value4");
let mut rt = tokio::runtime::current_thread::Runtime::new().expect("new rt");
let response = client.post("your url")
.multipart(form)
.send()
.and_then(|_| {
Ok(())
});
rt.block_on(response)
sourcepub fn query<T: Serialize + ?Sized>(self, query: &T) -> RequestBuilder
pub fn query<T: Serialize + ?Sized>(self, query: &T) -> RequestBuilder
Modify the query string of the URL.
Modifies the URL of this request, adding the parameters provided.
This method appends and does not overwrite. This means that it can
be called multiple times and that existing query parameters are not
overwritten if the same key is used. The key will simply show up
twice in the query string.
Calling .query([("foo", "a"), ("foo", "b")])
gives "foo=a&foo=b"
.
Note
This method does not support serializing a single key-value
pair. Instead of using .query(("key", "val"))
, use a sequence, such
as .query(&[("key", "val")])
. It’s also possible to serialize structs
and maps into a key-value pair.
Errors
This method will fail if the object you provide cannot be serialized into a query string.
sourcepub fn json<T: Serialize + ?Sized>(self, json: &T) -> RequestBuilder
pub fn json<T: Serialize + ?Sized>(self, json: &T) -> RequestBuilder
Send a JSON body.
Errors
Serialization can fail if T
’s implementation of Serialize
decides to
fail, or if T
contains a map with non-string keys.
sourcepub fn build(self) -> Result<Request>
pub fn build(self) -> Result<Request>
Build a Request
, which can be inspected, modified and executed with
Client::execute()
.
sourcepub fn send(self) -> impl Future<Item = Response, Error = Error>
pub fn send(self) -> impl Future<Item = Response, Error = Error>
Constructs the Request and sends it to the target URL, returning a future Response.
Errors
This method fails if there was an error while sending request, redirect loop was detected or redirect limit was exhausted.
Example
let response = reqwest::r#async::Client::new()
.get("https://hyper.rs")
.send()
.map(|resp| println!("status: {}", resp.status()));
let mut rt = tokio::runtime::current_thread::Runtime::new().expect("new rt");
rt.block_on(response)
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for RequestBuilder
impl Send for RequestBuilder
impl !Sync for RequestBuilder
impl Unpin for RequestBuilder
impl !UnwindSafe for RequestBuilder
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