1个不稳定版本
0.6.5 | 2023年4月20日 |
---|---|
0.6.1 |
|
0.4.1 |
|
0.4.0-alpha.0 |
|
0.3.0-alpha.6 |
|
974 在 游戏开发 中
73 每月下载量
用于 5 个可打包代码 (4 个直接使用)
75KB
1.5K SLoC
Rust中的Neos API
NeosVR API的Rust模型。
提供完整的serde支持,datetime的时间,以及更好的枚举类型的strum。
Neos API的官方文档缺失,并且API仍在变化。因此,这个crate不能保证正确性。一些类型完全基于有根据的猜测。
这个crate提供了一个可选的api_client
功能的API客户端示例。
未来计划
- 更好的总体文档
- 将某些链接的
Option<T>
字段拆分到它们自己的子结构中
测试
集成测试联系实时API。这就是为什么它们默认被忽略的原因。
其中一些还需要身份验证。
遗憾的是,没有所有的事情都可以在没有创建模拟API的情况下可靠地测试。这反而违背了测试最初的目的。
手动创建用户会话
您可以通过使用curl登录来生成一个user-sesion.json
文件
curl --request POST \
--url https://api.neos.com/api/userSessions \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"password": "pa$$word",
"secretMachineId": "string",
"rememberMe": true,
"ownerId": "string",
"email": "[email protected]",
"username": "string"
}' > user-session.json
仅使用单一的身份验证方法(用户名/电子邮件/所有者ID)。还请确保将其他值替换为您自己的。使用secretMachineId也是一个推荐的做法,以防止您的其他会话注销。例如,您可以使用以下命令生成一个随机的:openssl rand -hex 32
运行被忽略的测试
确保您有
- 互联网连接
- 有效的
user-sesion.json
然后只需运行测试;
# A specific test with output logging
cargo test --all-features get_user -- --exact --ignored --nocapture
# All tests
cargo test --all-features -- --ignored
许可证
请注意,许可证是MPL-2.0
而不是更常见的MIT OR Apache-2.0
。然而,如果Neos团队希望使用这个crate或将其纳入一个具有不同许可证的更官方的crate中,则可以协商许可证更改。
依赖项
~2–15MB
~192K SLoC