Skip to main content

Struct tauri::api::http::HttpRequestBuilder

x3A;:HttpRequestBuilder,

pub struct HttpRequestBuilder {
    pub method: String,
    pub url: String,
    pub query: Option<HashMap<String, String>>,
    pub headers: Option<HashMap<String, String>>,
    pub body: Option<Body>,
    pub timeout: Option<u64>,
    pub response_type: Option<ResponseType>,
}

Expand description

The builder for a HTTP request.

Examples#

use tauri::api::http::{ HttpRequestBuilder, ResponseType, ClientBuilder };
async fn run() {
  let client = ClientBuilder::new()
    .max_redirections(3)
    .build()
    .unwrap();
  let mut request_builder = HttpRequestBuilder::new("GET", "http://example.com");
  let request = request_builder.response_type(ResponseType::Text);

  if let Ok(response) = client.send(request).await {
    println!("got response");
  } else {
    println!("Something Happened!");
  }
}

Fields#

method: String

The request method (GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, CONNECT or TRACE)

url: String

The request URL

query: Option<HashMap<String, String>>

The request query params

headers: Option<HashMap<String, String>>

The request headers

body: Option<Body>

The request body

timeout: Option<u64>

Timeout for the whole request

response_type: Option<ResponseType>

The response type (defaults to Json)

Implementations#

impl HttpRequestBuilder[src]#

pub fn new(method: impl Into<String>, url: impl Into<String>) -> Self[src]#

Initializes a new instance of the HttpRequestrequest_builder.

pub fn query(self, query: HashMap<String, String>) -> Self[src]#

Sets the request parameters.

pub fn headers(self, headers: HashMap<String, String>) -> Self[src]#

Sets the request headers.

pub fn body(self, body: Body) -> Self[src]#

Sets the request body.

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

Sets the general request timeout.

pub fn response_type(self, response_type: ResponseType) -> Self[src]#

Sets the type of the response. Interferes with the way we read the response.

Trait Implementations#

impl Debug for HttpRequestBuilder[src]#

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]#

Formats the value using the given formatter. Read more

impl<'de> Deserialize<'de> for HttpRequestBuilder[src]#

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where __D: Deserializer<'de>,[src]#

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations#

impl RefUnwindSafe for HttpRequestBuilder#

impl Send for HttpRequestBuilder#

impl Sync for HttpRequestBuilder#

impl Unpin for HttpRequestBuilder#

impl UnwindSafe for HttpRequestBuilder#

Blanket Implementations#

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

pub fn type_id(&self) -> TypeId[src]#

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]#

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mutT[src]#

Mutably borrows from an owned value. Read more

impl<'de, D, R> CommandArg<'de, R> for D where R: Runtime, D: Deserialize<'de>,[src]#

pub fn from_command(CommandItem<'de, R>) -> Result<D, InvokeError>[src]#

Derives an instance of Self from the CommandItem. Read more

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

pub fn from(t: T) -> T[src]#

Performs the conversion.

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

pub fn into(self) -> U[src]#

Performs the conversion.

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]#

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]#

Performs the conversion.

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

pub fn vzip(self) -> V#

impl<T> DeserializeOwned for T where T: for<'de> Deserialize<'de>,#

[src]