#minecraft #mojang #客户端-服务器 #async-await #接口 #哈希 #认证

mojang-api

一个用于与 Mojang API 交互的简单库。包括对 async/await 的全面支持。

9 个版本 (5 个重大更新)

0.6.1 2020年3月15日
0.6.0 2020年3月15日
0.5.1 2020年2月29日
0.4.0 2019年10月9日
0.1.0 2019年7月2日

#6 in #mojang

MIT/Apache

19KB
270 代码行

mojang-api

Documentation

此软件包提供了一种简单易用的接口,用于利用 Mojang API。它使用实验性的 async/await 语法,允许进行干净的异步请求。

目前支持以下机制

  • 获取用于与 Mojang 进行认证所需的“服务器哈希”。
  • 对客户端进行服务器端认证。

未来将添加更多功能。


lib.rs:

一个简单易用的库,用于与 Mojang API 交互。

此软件包中涉及 IO 的所有函数都是异步的,并使用 async/await。因此,您将需要使用 nightly Rust,直到 async/await 稳定下来。

此软件包提供了一些函数

  • 使用 Mojang API 进行服务器端认证,用于验证客户端是否已正确登录。此功能可通过 server_auth 函数使用。
  • 获取用于认证的“服务器哈希”,可通过 server_hash 使用。由于 Mojang 使用异常的哈希摘要来获取值,因此此软件包提供了一种简单的方法来获取它。

示例

在服务器上认证客户端


// Obtain the "server hash"
let server_hash = mojang_api::server_hash(
    "", // Note that the "server ID" is always an empty string
    shared_secret,
    public_key,
);

// Make the API request
let response = mojang_api::server_auth(&server_hash, username).await?;

// Now do something with it...

依赖项

~4–8.5MB
~194K SLoC