pub struct ApiClient { /* 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<Client, Error>
pub async fn new(api_url: &str) -> Result<Client, Error>
Get an API Client instance. The API URL should be the absolute
path to api.php.
Sourcepub async fn get_value<P>(&self, params: P) -> Result<Value, Error>
pub async fn get_value<P>(&self, params: P) -> Result<Value, Error>
Same as Client::get(), but return a serde_json::Value
Sourcepub async fn get<P, T>(&self, params: P) -> Result<T, Error>
pub async fn get<P, T>(&self, params: P) -> Result<T, Error>
Make an arbitrary API request using HTTP GET.
Sourcepub async fn post_with_token<P, T>(
&self,
token_type: &str,
params: P,
) -> Result<T, Error>
pub async fn post_with_token<P, T>( &self, token_type: &str, params: P, ) -> Result<T, Error>
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_value<P>(&self, params: P) -> Result<Value, Error>
pub async fn post_value<P>(&self, params: P) -> Result<Value, Error>
Same as Client::post(), but return a serde_json::Value
Sourcepub async fn upload<P>(
&self,
filename: &str,
path: PathBuf,
chunk_size: usize,
ignore_warnings: bool,
params: P,
) -> Result<String, Error>
pub async fn upload<P>( &self, filename: &str, path: PathBuf, chunk_size: usize, ignore_warnings: bool, params: P, ) -> Result<String, Error>
Upload a file under with the given filename from a path.
- The
chunk_sizeshould be in bytes, 5MB (5_000_000) is a reasonable default if you’re unsure. - Warnings will be returned as an error unless
ignore_warningsis true. - Any extra parameters can be passed in the standard format.
Sourcepub fn http_client(&self) -> &Client
pub fn http_client(&self) -> &Client
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.