1 个不稳定版本
0.1.0 | 2023年9月18日 |
---|
#2 在 #moodle
在 moodle 中使用
2.5MB
51K SLoC
moodle-rs
Moodle Web服务客户端,使用Rust编写。
特性
- 参数和返回值完全类型化。
- 然而,由于Moodle版本的不同,有时可以使用
call_raw
获取原始的serde_json::Value
并自行解析。
- 然而,由于Moodle版本的不同,有时可以使用
示例
见 示例。
use moodle::api::core::course::get_enrolled_courses_by_timeline_classification::{call, Params};
use moodle::client::{login, MoodleClient};
#[tokio::main]
async fn main() {
let base_url = std::env::var("MOODLE_URL").unwrap();
let username = std::env::var("MOODLE_USERNAME").unwrap();
let password = std::env::var("MOODLE_PASSWORD").unwrap();
let token = login(&base_url, &username, &password).await.unwrap();
let mut client = MoodleClient::new(&base_url, &token);
let result = call(
&mut client,
&mut Params {
classification: Some("all".to_string()),
limit: Some(3),
offset: Some(0),
sort: None,
customfieldname: None,
customfieldvalue: None,
searchvalue: None,
},
)
.await;
println!("{:#?}", result);
}
依赖
~6–22MB
~350K SLoC