2个版本
0.7.2 | 2024年5月30日 |
---|---|
0.7.1 | 2024年3月10日 |
#342 in 音频
每月51次下载
用于 listenbrainz-cli-tools
67KB
1.5K SLoC
不要使用这个
请使用 listenbrainz-rs 代替
这是一个临时分支,其中包含了一些合并的拉取请求,以便允许 listenbrainz-cli-tools 的CI运行。将其视为 https://github.com/InputUsername/listenbrainz-rs 的精选功能合并的夜间版本。
我会打破兼容性,并且不会在意你的crates。listenbrainz-rs仍在积极维护中,所以请使用它。
lib.rs
:
ListenBrainz的API绑定。
这个crate旨在成为ListenBrainz HTTP API(版本1)的惯用包装器。它包含在 [raw
] 模块中直接访问API的功能,以及一个更方便的 ListenBrainz
客户端,更容易使用。
通常,使用raw
功能比较繁琐,因为它的类型和函数与HTTP API的JSON输入和响应数据一一对应。因此,建议使用ListenBrainz
类型。
示例
将当前播放的歌曲提交到ListenBrainz.org
#
let mut client = ListenBrainz::new();
client.authenticate("LISTENBRAINZ TOKEN")
.expect("Could not authenticate with ListenBrainz");
client.playing_now("The Beatles", "Here Comes the Sun", Some("Abbey Road"))
.expect("Could not submit 'playing now' request");
使用自定义API URL,例如提交歌曲到Maloja
#
let mut client = ListenBrainz::new_with_url("http://maloja.example.com/apis/listenbrainz");
client.authenticate("MALOJA API KEY")
.expect("Could not authenticate with Maloja");
client.listen("Lymbyc Systym", "Split Stones", None)
.expect("Could not submit listen");
依赖项
~2.5–4MB
~98K SLoC