5 个版本

0.0.5 2024 年 6 月 14 日
0.0.4 2024 年 6 月 14 日
0.0.3 2024 年 4 月 3 日
0.0.2 2024 年 3 月 25 日
0.0.1 2024 年 3 月 25 日

#1775 in 魔法豆

MIT 许可证

255KB
5.5K SLoC

Midgard

与交换、池和体积相关的消费者信息。Midgard 返回有关 THORChain 网络的时间序列信息,如体积、池信息、用户、流动性提供者等。它还代理到 THORNode 以减轻网络负担。在所有节点上运行。

midgard-rs

这个 crate 旨在提供对 THORChain Midgard API 的完全类型化客户端。

  • 默认情况下,它引用的是 https://midgard.thorswap.net/v2/ 基础 URL,但可以通过创建一个新的 Configuration 对象并将其传递给 Midgard::with_config() 方法来更改。
  • 客户端默认每秒限制 1 个请求,但可以通过创建一个新的 Configuration 对象并将其传递给 Midgard::with_config() 方法来更改。

基本用法

use midgard::Midgard;

#[tokio::main]
async fn main() {
    let midgard = Midgard::new();
    let address = "thor102y0m3uptg0vvudeyh00r2fnz70wq7d8y7mu2g";
    let balance = midgard.get_balance(address, None, None).await.unwrap();
    println!("coins: {:?}", balance.get_coins());
}

配置

use midgard::Midgard;
use midgard::Configuration;

#[tokio::main]
async fn main() {
    let config = Configuration::new("https://midgard.ninerealms.com/v2/".to_string(), 1000); // base_url, rate_limit_ms
    let midgard = Midgard::with_config(config);
    let address = "thor102y0m3uptg0vvudeyh00r2fnz70wq7d8y7mu2g";
    let balance = midgard.get_balance(address, None, None).await.unwrap(); // address, timestamp, height
    println!("coins: {:?}", balance.get_coins());
}

依赖项

~8–20MB
~290K SLoC