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日 |
#599 in 音频
5,150每月下载
在18个包中使用 (直接使用3个)
7KB
RSpotify
RSpotify是Spotify Web API的包装器,灵感来自spotipy。它支持所有授权流程,并提供所有端点的辅助函数。
有关如何使用RSpotify的说明,请参阅文档。还有一些示例可能有用。
变更日志
请参阅变更日志以了解版本历史和如何从版本升级到版本。
贡献
如果您发现任何问题或对此包有任何建议,请提交问题。此外,任何pull request、代码审查和反馈都受欢迎。
代码指南
我们使用GitHub Actions确保代码库一致(cargo fmt
)并且持续测试(cargo test
)。我们尽量保持注释不超过80个字符(这不会由cargo fmt
自动检查)和代码不超过120。
特质层次结构
包层次结构
构建
RSpotify使用maybe_async
在异步和阻塞客户端之间切换,这由Cargo.toml
内部触发。因此在构建rspotify
时必须考虑这一点。有关如何使用自定义TLS实现进行构建以及更多信息,请参阅文档中的配置部分。
client-reqwest
是默认使用的。使用起来应该很简单。
$ cargo build
client-ureq
也作为blocking
接口可用,这需要使用ureq
(也必须指定TLS)来编译RSpotify。
$ 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
有关更多详细信息,请参阅文档