3 个不稳定版本
0.2.0 | 2022年10月17日 |
---|---|
0.1.1 | 2022年10月17日 |
0.1.0 | 2022年10月16日 |
#4 in #leaderboard
16KB
262 行
retrommo-fetch
围绕 RetroMMO API 的小型 Rust 包装器。
使用方法
该库提供了一个预言,导出所有相关的类型和函数。
// Cargo.toml
[dependencies]
retrommo-fetch = "0.1.0"
// main.rs
use retrommo_fetch::prelude::*;
可用函数
get_leaderboard() ->排行榜
返回排行榜页面的迭代器。
注意:这是一个非异步函数。如果您在异步上下文中调用它,必须使用阻塞线程,例如 tokio::task::block_in_place
。
let mut leaderboard = get_leaderboard();
let page1 = leaderboard.try_next()?;
println!("Page 1: {:?}", page1);
let page2 = leaderboard.try_next()?;
println!("Page 2: {:?}", page2);
get_player(username: String)
-> Result<Player, Error>
返回一个具有给定用户名的 Player
结构。
let player = get_player("Gliss").await?;
println!("{:#?}", player);
// Player {
// rank: 25,
// registered_at: 2020-11-10T05:05:02Z,
// username: "Gliss",
// time_played: 1009554.2688390692,
// permissions: 0,
// lifetime_experience: 313320,
// }
get_leaderboard_page(page: u32)
-> Result<Leaderboard, Error>
返回具有给定页面上所有玩家条目的 Leaderboard
结构。如果没有提供页码(None),则返回第一页。
每页最多100个条目。
let page = get_leaderboard_page(Some(4)).await?;
for entry in page {
println!("{:?}", entry);
}
get_top_players() -> 结果<LeaderboardPage, Error>
返回一个包含前100名玩家的 LeaderboardPage
结构。这是 get_leaderboard_page(None)
或 get_leaderboard_page(Some(1))
的别名。
get_online_players()
-> Result<OnlineList, Error>
返回当前在线玩家的 Vec
。请注意,这仅是他们用户名(String)。
get_online_players_full()
-> Result<Vec<Player>, Error>
返回当前在线的 Player
结构体的 Vec
。如果在线玩家很多,请小心使用此功能,因为它可能需要向API发出很多请求,由于限制。
get_registered_player_count()
-> Result<u64, Error>
返回注册玩家的总数。
许可证
retrommo-fetch 源代码采用双重许可证,您可以选择以下之一:
由您选择。
依赖项
~5–18MB
~264K SLoC