12个版本
0.13.2 | 2024年6月4日 |
---|---|
0.13.0 | 2024年3月8日 |
0.12.0 | 2023年8月26日 |
0.11.7 | 2023年4月27日 |
0.11.3 | 2021年11月29日 |
在 音频 类别中排名第 119
每月下载量 5,026
被 19 个crate使用(直接使用5个)
105KB
2.5K SLoC
RSpotify
RSpotify 是 Spotify Web API 的封装,灵感来源于 spotipy。它支持所有 授权流程,并为所有端点提供辅助函数。
要了解如何使用 RSpotify,请参阅 文档。还有一些可能有用的 示例。
变更日志
请参阅 变更日志 了解版本发布历史和如何从版本升级到另一个版本。
贡献
如果您在此crate中发现任何问题或对此crate有建议,请提交问题。此外,任何pull request、代码审查和反馈都受欢迎。
代码指南
我们使用GitHub Actions确保代码库的一致性(cargo fmt
)和持续测试(cargo test
)。我们尽量将注释长度控制在80个字符以内(cargo fmt
不会自动检查),并将代码控制在120个字符以内。
特质层次
crate层次
构建
RSpotify 使用 maybe_async
在异步和阻塞客户端之间切换,这由 Cargo.toml
内触发。因此,在构建 rspotify
时必须考虑这一点。请参阅文档中的配置部分,了解有关如何使用自定义TLS实现和其他信息的更多信息。
client-reqwest
默认使用。它应该像这样简单:
$ cargo build
client-ureq
也可用作 blocking
接口,使用 ureq
编译 RSpotify(还需要指定 TLS)
$ cargo build --no-default-features --features client-ureq,ureq-rustls-tls
请注意,您不能像这样构建具有所有功能的 rspotify
$ cargo build --all-features
因为为了在客户端之间切换,不同的客户端必须在 src/http/mod.rs 中实现相同的基特质,所以如果您使用所有功能进行构建,您将得到 duplicate definitions
错误。每枚硬币都有两面,一次只能有一面,不能同时有所有面。
WASM 支持
RSpotify 支持为 wasm32-unknown-unknown
目标进行构建。它应该像这样简单:
$ cargo build --target wasm32-unknown-unknown
有关更多详细信息,请参阅文档
许可证
依赖项
~1.8–3MB
~55K SLoC