Spotify.NET/SpotifyAPI.Docs/docs/auth/authorization_code.md
2019-08-17 00:40:16 +02:00

1.2 KiB

sidebar
false

AutorizationCodeAuth

This way is not recommended for client-side apps and requires server-side code to run securely. With this approach, you first get a code which you need to trade against the access-token. In this exchange you need to provide your Client-Secret and because of that it's not recommended. A good thing about this method: You can always refresh your token, without having the user to auth it again.

More info: here

static async void Main(string[] args)
{
    AuthorizationCodeAuth auth = new AuthorizationCodeAuth(
      _clientId,
      _secretId,
      "http://localhost:4002",
      "http://localhost:4002",
      Scope.PlaylistReadPrivate | Scope.PlaylistReadCollaborative
    );

    auth.AuthReceived += async (sender, payload) =>
    {
        auth.Stop();
        Token token = await auth.ExchangeCode(payload.Code);
        SpotifyWebAPI api = new SpotifyWebAPI()
        {
          TokenType = token.TokenType,
          AccessToken = token.AccessToken
        };
        // Do requests with API client
    };
    auth.Start(); // Starts an internal HTTP Server
    auth.OpenBrowser();
}