#graphql #access-token #mutation #subscription #queries #api-bindings

glimesh

用于对Glimesh API执行查询、变更和订阅的客户端

16个版本 (8个破坏性版本)

0.9.0 2023年3月21日
0.8.0 2021年11月22日
0.7.0 2021年10月26日
0.6.0 2021年7月5日
0.5.0 2021年3月26日

#128 in WebSocket

Download history 82/week @ 2024-03-29 18/week @ 2024-04-05

每月93次下载

MIT/Apache

83KB
1.5K SLoC

glimesh-rs

Crates.io Crates.io Docs.rs

围绕graphql_client的包装,以便更容易地与Glimesh一起使用。这目前是一个正在进行中的项目,应被视为测试版,但它正在用于支持Oaty的生产。

功能

  • 查询
  • 变更
  • 订阅
  • HTTP或WebSocket连接
  • 自动刷新访问令牌
  • 在socket失败时重新连接并重新订阅订阅

示例

更多示例可以在examples/目录中找到。

#[derive(GraphQLQuery)]
#[graphql(
    schema_path = "examples/graphql/schema.json",
    query_path = "examples/graphql/user_details.graphql",
    response_derives = "Debug"
)]
pub struct UserDetailsQuery;

let auth = Auth::client_id(client_id);
let conn = Connection::new(auth);
let client = conn.into_client();

let res = client
    .query::<UserDetailsQuery>(
        user_details_query::Variables {
            username: "James".into(),
        }
    )
    .await?;

let user = res.user;
println!("User details: {:#?}", user);

许可证

许可协议为以下之一

任选其一。

贡献

除非您明确声明,否则您有意提交以包含在作品中的任何贡献,根据Apache-2.0许可证定义,应按照上述方式双许可,不附加任何额外条款或条件。

依赖关系

~9–26MB
~378K SLoC