#riot #lol #league #legends #api #api-wrapper #api-bindings

lol_api_rs

一个简单的《英雄联盟》API包装器

1 个不稳定版本

使用旧的Rust 2015

0.2.0 2017年7月19日

#16 in #legends

MIT 许可证

105KB
1.5K SLoC

《英雄联盟》API包装器用于Rust

想用Rust创建下一个最酷的东西吗?一个Discord机器人?一个新的网站?下一个黑客信息中心?这就是为你准备的。

入门指南

首先,在你的Cargo.toml文件中,添加以下行

[dependencies]
lol_api_rs = "0.2.0"

在你的主文件中添加

extern crate lol_api_rs;

发起第一次调用

一切安装完成后,发起第一次调用就像创建一个构造函数并调用一个端点一样简单。

// Use the Riot API constructor
use lol_api_rs::client::Riot;

// Define your Riot API Key
const RIOT_API_KEY: &'static str = "RGAPI-xxxxxxxxxxx";

fn main () {
	// Define new riot API factory
    // It accepts the following arguments.
    // The first param is your API key
    // The second param is the region to run your queries against. (NA is default)
    // The third param is if you want to use a custom logger to log debug statements
    let riot = Riot::new(RIOT_API_KEY, None, None);

    // For our example we'll get champion information for Champion 99 - Lux
    let json = riot.get_champions_by_id(99);

    // Every call will return a Result<DataType, String> The below match is a simple handler for this.
    match json {
        Ok(j) => println!("{:?}", j),
        Err(e) => println!("There was an error: {}", e)
    }
}

重大变更

0.2.0

  • 之前所有调用都返回结果或panic。这已被更改为返回一个类型Result。

问题/评论?

在GitHub上打开一个问题或给我发电子邮件。我很乐意使这个库更加健壮/更好的工作。了解速率限制、更好的编码等。这是我第一个Rust项目,我期待着更多地了解这个语言和社区。

依赖项

~6–16MB
~225K SLoC