3 个版本 (重大更改)

0.3.0 2019年12月28日
0.2.0 2019年7月27日
0.1.0 2019年3月15日

#60 in #spotify

每月24次下载

MIT 许可协议

29KB
350

spotify-oauth

Docs

描述

spotify-oauth 是一个用于 Spotify 授权 的库。它实现了 Spotify 需要用户在使用网页 API 之前进行的完整授权码流。

基本示例

此示例展示了如何使用该库创建一个完整的授权流程,以获取使用网页 API 所需的令牌。

use std::{io::stdin, str::FromStr, error::Error};
use spotify_oauth::{SpotifyAuth, SpotifyCallback, SpotifyScope};

#[async_std::main]
async fn main() -> Result<(), Box<dyn Error + Send + Sync + 'static>> {

    // Setup Spotify Auth URL
    let auth = SpotifyAuth::new_from_env("code".into(), vec![SpotifyScope::Streaming], false);
    let auth_url = auth.authorize_url()?;

    // Open the auth URL in the default browser of the user.
    open::that(auth_url)?;

    println!("Input callback URL:");
    let mut buffer = String::new();
    stdin().read_line(&mut buffer)?;

    // Convert the given callback URL into a token.
    let token = SpotifyCallback::from_str(buffer.trim())?
        .convert_into_token(auth.client_id, auth.client_secret, auth.redirect_uri).await?;

    println!("Token: {:#?}", token);

    Ok(())
}

API 文档

更多 API 信息可以在 此处 找到。

贡献

如果您对库有任何建议或问题,请提交一个问题。欢迎提交拉取请求、代码审查和反馈。

许可

MIT

依赖项

~8.5MB
~190K SLoC