[][src]Struct reqwest_oauth1::RequestBuilder

pub struct RequestBuilder<TSigner> where
    TSigner: Clone
{ /* fields omitted */ }

Compatible interface with reqwest's RequestBuilder.

Implementations

impl RequestBuilder<()>[src]

pub fn sign<'a, TSecrets>(
    self,
    secrets: TSecrets
) -> RequestBuilder<Signer<'a, TSecrets, DefaultSM>> where
    TSecrets: SecretsProvider + Clone
[src]

Add the signing information.

pub fn sign_with_params<'a, TSecrets, TSM>(
    self,
    secrets: TSecrets,
    params: OAuthParameters<'a, TSM>
) -> RequestBuilder<Signer<'a, TSecrets, TSM>> where
    TSecrets: SecretsProvider + Clone,
    TSM: SignatureMethod + Clone
[src]

Add the signing information with OAuth parameters.

impl<TSecrets, TSM, '_> RequestBuilder<Signer<'_, TSecrets, TSM>> where
    TSecrets: SecretsProvider + Clone,
    TSM: SignatureMethod + Clone
[src]

pub async fn send(self) -> Result<Response, Error>[src]

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.

pub fn generate_signature(self) -> SignResult<ReqwestRequestBuilder>[src]

Generate an OAuth signature and return the reqwest's RequestBuilder.

impl<TSigner> RequestBuilder<TSigner> where
    TSigner: Clone
[src]

pub fn query<T: Serialize + ?Sized>(self, query: &T) -> Self[src]

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.

pub fn form<T: Serialize + ?Sized + Clone>(self, form: &T) -> Self[src]

Send a form body.

pub fn query_without_capture<T: Serialize>(self, query: &T) -> Self[src]

Modify the query string of the URL, without capturing OAuth parameters.

Note

Generated OAuth signature will may be invalid when you call this method with the parameters including the oauth_* parameters or the realm parameter.

pub fn form_without_capture<T: Serialize + ?Sized>(self, form: &T) -> Self[src]

Note

Generated OAuth signature will may be invalid when you call this method with the parameters including the oauth_* parameters or the realm parameter.

pub fn header<K, V>(self, key: K, value: V) -> Self where
    HeaderName: TryFrom<K>,
    <HeaderName as TryFrom<K>>::Error: Into<Error>,
    HeaderValue: TryFrom<V>,
    <HeaderValue as TryFrom<V>>::Error: Into<Error>, 
[src]

Add a Header to this Request.

pub fn headers(self, headers: HeaderMap) -> Self[src]

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>) -> Self where
    U: Display,
    P: Display
[src]

Enable HTTP basic authentication.

pub fn bearer_auth<T>(self, token: T) -> Self where
    T: Display
[src]

Enable HTTP bearer authentication.

pub fn body<T: Into<Body>>(self, body: T) -> Self[src]

Set the request body.

pub fn timeout(self, timeout: Duration) -> Self[src]

Enables a request timeout.

The timeout is applied from the when the request starts connecting until the response body has finished. It affects only this request and overrides the timeout configured using ClientBuilder::timeout().

pub fn multipart(self, multipart: Form) -> Self[src]

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?;

Note: multipart/form-data is not handled by the OAuth signer.

pub fn fetch_mode_no_cors(self) -> Self[src]

Disable CORS on fetching the request.

WASM

This option is only effective with WebAssembly target.

The request mode will be set to 'no-cors'.

pub fn try_clone(&self) -> Option<Self>[src]

Attempt to clone the RequestBuilder.

None is returned if the RequestBuilder can not be cloned, i.e. if the request body is a stream.

Trait Implementations

impl<TSigner: Debug> Debug for RequestBuilder<TSigner> where
    TSigner: Clone
[src]

Auto Trait Implementations

impl<TSigner> !RefUnwindSafe for RequestBuilder<TSigner>

impl<TSigner> Send for RequestBuilder<TSigner> where
    TSigner: Send

impl<TSigner> Sync for RequestBuilder<TSigner> where
    TSigner: Sync

impl<TSigner> Unpin for RequestBuilder<TSigner> where
    TSigner: Unpin

impl<TSigner> !UnwindSafe for RequestBuilder<TSigner>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,