Crate cdumay_http_client

Source
Expand description

cdumay_http_client is a basic library used to standardize result and serialize them using serde.

§Quickstart

Cargo.toml:

[dependencies]
cdumay_error = "0.3"
cdumay_result = "0.3"
cdumay_http_client = "0.3"

main.rs:

extern crate cdumay_error;
extern crate cdumay_http_client;
extern crate serde_json;

use cdumay_error::JsonError;
use cdumay_http_client::authentication::NoAuth;
use cdumay_http_client::{ClientBuilder, HttpClient};

fn main() {
    use cdumay_http_client::BaseClient;
let cli = HttpClient::new("https://www.rust-lang.org").unwrap();
    let result = cli.get("/learn/get-started".into(), None, None, None, None);

    match result {
        Ok(data) => println!("{}", data),
        Err(err) => println!("{}", serde_json::to_string_pretty(&JsonError::from(err)).unwrap()),
    }
}

Output:

<!doctype html>
<html lang="en-US">
  <head>
    <meta charset="utf-8">
    <title>
[...]

§Errors

Errors can be displayed using cdumay_error:

{
  "code": 500,
  "message": "error trying to connect",
  "msgid": "Err-05192"
}

Modules§

authentication

Structs§

CallContext
HttpClient
HttpStatusCodeErrors
ResponseErrorWithContext

Enums§

ClientError

Traits§

BaseClient
ClientBuilder