16 releases

new 0.0.16 Nov 17, 2024
0.0.15 Nov 11, 2024
0.0.13 Oct 27, 2024
0.0.4 Sep 1, 2024
0.0.3 Aug 17, 2024

#316 in Authentication

Download history 160/week @ 2024-08-04 135/week @ 2024-08-11 58/week @ 2024-08-18 6/week @ 2024-08-25 154/week @ 2024-09-01 1/week @ 2024-09-08 17/week @ 2024-09-15 9/week @ 2024-09-22 13/week @ 2024-09-29 304/week @ 2024-10-06 56/week @ 2024-10-13 729/week @ 2024-10-20 257/week @ 2024-10-27 114/week @ 2024-11-03 151/week @ 2024-11-10

1,252 downloads per month
Used in 2 crates

MPL-2.0 license

275KB
5.5K SLoC

OpenIAP client c library

This is the rust implementation of the openiap client. This will also function as the "base" for openiap SDK implementations in other programming languages. For now this is only the GRPC and WebSocket client, later we will add a web rest, named pipe and TCP client as well.


lib.rs:

The openiap.client crate provides the [Client] struct and its methods. For now this is only the GRPC and WebSocket client, later we will add a web rest, named pipe and TCP client as well. Initialize a new client, by calling the Client::new_connect method.

use openiap_client::{OpenIAPError, Client, QueryRequest};
#[tokio::main]
async fn main() -> Result<(), OpenIAPError> {
    let client = Client::new_connect("").await?;
    let q = client.query( QueryRequest::with_projection(
        "entities",
        "{}",
        "{\"name\":1}"
    )).await?;
    let items: serde_json::Value = serde_json::from_str(&q.results).unwrap();
    let items: &Vec<serde_json::Value> = items.as_array().unwrap();
    for item in items {
        println!("Item: {:?}", item);
    }
    Ok(())
}

Dependencies

~15–49MB
~787K SLoC