pub struct Client { /* private fields */ }
Expand description
API Client
Implementations§
source§impl Client
impl Client
sourcepub fn builder(api_url: &str) -> Builder
pub fn builder(api_url: &str) -> Builder
Get a Builder
instance to further customize the API Client
.
The API URL should be the absolute path to api.php.
sourcepub async fn new(api_url: &str) -> Result<Self>
pub async fn new(api_url: &str) -> Result<Self>
Get an API Client
instance. The API URL should be the absolute
path to api.php.
sourcepub async fn get_value<P: Into<Params>>(&self, params: P) -> Result<Value>
pub async fn get_value<P: Into<Params>>(&self, params: P) -> Result<Value>
Same as get()
, but return a serde_json::Value
sourcepub async fn get<P: Into<Params>, T: DeserializeOwned>(
&self,
params: P
) -> Result<T>
pub async fn get<P: Into<Params>, T: DeserializeOwned>( &self, params: P ) -> Result<T>
Make an arbitrary API request using HTTP GET.
sourcepub async fn post_with_token<P: Into<Params>, T: DeserializeOwned>(
&self,
token_type: &str,
params: P
) -> Result<T>
pub async fn post_with_token<P: Into<Params>, T: DeserializeOwned>( &self, token_type: &str, params: P ) -> Result<T>
Make an API POST request with a CSRF token. The correct token will automatically be fetched, and in case of a bad token error (if it expired), a new one will automatically be fetched and the request retried.
sourcepub async fn post<P: Into<Params>, T: DeserializeOwned>(
&self,
params: P
) -> Result<T>
pub async fn post<P: Into<Params>, T: DeserializeOwned>( &self, params: P ) -> Result<T>
Make an API POST request
sourcepub async fn post_value<P: Into<Params>>(&self, params: P) -> Result<Value>
pub async fn post_value<P: Into<Params>>(&self, params: P) -> Result<Value>
Same as post()
, but return a serde_json::Value
sourcepub async fn upload<P: Into<Params>>(
&self,
filename: &str,
path: PathBuf,
chunk_size: usize,
ignore_warnings: bool,
params: P
) -> Result<String>
Available on crate feature upload
only.
pub async fn upload<P: Into<Params>>( &self, filename: &str, path: PathBuf, chunk_size: usize, ignore_warnings: bool, params: P ) -> Result<String>
upload
only.Upload a file under with the given filename from a path.
- The
chunk_size
should be in bytes, 5MB (5_000_000
) is a reasonable default if you’re unsure. - Warnings will be returned as an error unless
ignore_warnings
is true. - Any extra parameters can be passed in the standard format.
sourcepub fn http_client(&self) -> &HttpClient
pub fn http_client(&self) -> &HttpClient
Get access to the underlying reqwest::Client
to make arbitrary
GET/POST requests, sharing the connection pool and cookie storage.
For example, if you wanted to download images from the wiki.