wasi_net/reqwest/
client.rs

1#![allow(dead_code)]
2use std::collections::HashMap;
3
4use super::*;
5
6pub struct Client {
7    pub(crate) builder: ClientBuilder,
8}
9
10impl Client {
11    pub fn get<U: IntoUrl>(self, url: U) -> RequestBuilder {
12        self.request(http::Method::GET, url)
13    }
14
15    pub fn post<U: IntoUrl>(self, url: U) -> RequestBuilder {
16        self.request(http::Method::POST, url)
17    }
18
19    pub fn put<U: IntoUrl>(self, url: U) -> RequestBuilder {
20        self.request(http::Method::PUT, url)
21    }
22
23    pub fn patch<U: IntoUrl>(self, url: U) -> RequestBuilder {
24        self.request(http::Method::PATCH, url)
25    }
26
27    pub fn delete<U: IntoUrl>(self, url: U) -> RequestBuilder {
28        self.request(http::Method::DELETE, url)
29    }
30
31    pub fn head<U: IntoUrl>(self, url: U) -> RequestBuilder {
32        self.request(http::Method::HEAD, url)
33    }
34
35    pub fn request<U: IntoUrl>(self, method: http::Method, url: U) -> RequestBuilder {
36        RequestBuilder {
37            method,
38            url: url.into_url().unwrap(),
39            client: self,
40            headers: HashMap::default(),
41            request: None,
42        }
43    }
44
45    pub fn builder() -> ClientBuilder {
46        ClientBuilder::new()
47    }
48}