Struct reqwest::RequestBuilder [−][src]
pub struct RequestBuilder { /* fields omitted */ }
Expand description
A builder to construct the properties of a Request
.
To construct a RequestBuilder
, refer to the Client
documentation.
Implementations
pub fn header<K, V>(self, key: K, value: V) -> RequestBuilder where
HeaderName: TryFrom<K>,
<HeaderName as TryFrom<K>>::Error: Into<Error>,
HeaderValue: TryFrom<V>,
<HeaderValue as TryFrom<V>>::Error: Into<Error>,
pub fn header<K, V>(self, key: K, value: V) -> RequestBuilder where
HeaderName: TryFrom<K>,
<HeaderName as TryFrom<K>>::Error: Into<Error>,
HeaderValue: TryFrom<V>,
<HeaderValue as TryFrom<V>>::Error: Into<Error>,
Add a Header
to this Request.
Add a set of Headers to the existing ones on this Request.
The headers will be merged in to any already set.
pub 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.
Enable HTTP bearer authentication.
Set the request body.
Enables a request timeout.
The timeout is applied from when the request starts connecting until the
response body has finished. It affects only this request and overrides
the timeout configured using ClientBuilder::timeout()
.
This is supported on crate feature multipart
only.
multipart
only.Sends a multipart/form-data body.
let client = reqwest::Client::new(); let form = reqwest::multipart::Form::new() .text("key3", "value3") .text("key4", "value4"); let response = client.post("your url") .multipart(form) .send() .await?;
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.
Set HTTP version
This is supported on crate feature json
only.
json
only.Disable CORS on fetching the request.
WASM
This option is only effective with WebAssembly target.
The request mode will be set to ‘no-cors’.
Build a Request
, which can be inspected, modified and executed with
Client::execute()
.
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::Client::new() .get("https://hyper.rs") .send() .await?;
Attempt to clone the RequestBuilder.
None
is returned if the RequestBuilder can not be cloned,
i.e. if the request body is a stream.
Examples
let client = reqwest::Client::new(); let builder = client.post("http://httpbin.org/post") .body("from a &str!"); let clone = builder.try_clone(); assert!(clone.is_some());
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