1 个不稳定版本

0.1.0 2024 年 2 月 1 日

排名第 518HTTP 客户端

MIT 许可证

89KB
2.5K SLoC

wom_rs

用于与 Wise Old Man API 交互的异步 Rust 包装器。

wom_rs 的目标是提供 Rust API 的 1:1 对应。这还是一个正在进行中的项目,您可以在 端点进度 中找到当前端点的状态。如果您发现任何问题或有任何建议,请随时提交问题。

入门

wom_rs 添加到您的 Cargo.toml 文件中

[dependencies]
wom_rs = "0.1.0"

要获取与 API 交互的客户端,请使用 WomClient 结构体

use wom_rs::WomClient;

//Default client
let wom_client = WomClient::new();

//Client with an api key
let api_key = std::env::var("WOM_API_KEY").unwrap();
let wom_client = WomClient::new_with_key(api_key);

示例 Web 调用

use wom_rs::WomClient;
let wom_client = WomClient::new();

let details = wom_client.player_client.get_details("IFat Fingers".to_string()).await;
println!("{:?}", details);

端点进度

某些端点可能有重叠的完成功能。例如,您可以通过用户名获取玩家姓名更改,但不能提交姓名更改请求。

项目布局

客户端

包含与 API 交互的客户端。上述每个端点都将通过 WomClient 访问。

模型

用于表示 API 返回数据的各种模型。您会发现许多在 模型 中处理的响应非常相似。在 WOM API 中,许多响应都是基于彼此构建的。我没有在 Rust 中找到做这件事的好方法。因此,我将它们分开以保持清晰。

以下是一些可能不清晰的模型:

  • 错误:包含 API 错误响应的模型。
  • 快照:包含 API 返回的快照数据的模型。这与 PlayerGain 非常相似,但为了清晰起见,将其分开。

模拟响应

包含用于测试的模拟响应。这些响应用于测试从API中反序列化响应。所有示例要么来自真实API,要么来自WOM出色API文档中的示例。

特别感谢

如果没有在Wise Old Man的出色团队,这一切都不可能实现。如果不是因为他们的网站,就不需要包装器。更不用说他们的令人惊叹的文档使创建变得轻而易举。

依赖项

约5-21MB
约275K SLoC