spotify-oauth
Description
spotify-oauth is a library for Spotify Authorization.
It features a full implementation of the Authorization Code Flow that Spotify requires a user to undergo before using the web API.
Basic Example
This example shows how the library can be used to create a full authorization flow for retrieving the token required to use the web 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>> {
let auth = SpotifyAuth::new_from_env("code".into(), vec![SpotifyScope::Streaming], false);
let auth_url = auth.authorize_url()?;
open::that(auth_url)?;
println!("Input callback URL:");
let mut buffer = String::new();
stdin().read_line(&mut buffer)?;
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 Documentation
More API information can be located here.
Contribution
If you have any suggestions or issues towards this library, please submit an
issue. Pull requests, code reviewing and feedback are welcome.
License
MIT