spotify_ex v1.0.3 Spotify.Authentication

Authenticates the Spotify user.

After your app is authorized, the user must be authenticated. A redirect URL is specified in the config folder. This is the URL that Spotify redirects to after authorization, and should ultimately end up hitting this module’s authenticate function. If the authorization is successful, the param code will be present.

If a refresh token still exists, the client will refresh the access token.

Summary

Functions

Authenticates the user

Attempts to refresh your access token if the connection cookie exits

Checks for refresh and access tokens

Functions

authenticate(conn, map)

Authenticates the user

The authorization code must be present from spotify or an exception will be raised. The token will be refreshed if possible, otherwise the app will request new access and request tokens.

## Example: ##

Spotify.authenticate(conn, %{"code" => code})
# {:ok, "your access token", conn}

Spotify.authenticate(conn, %{"not_a_code" => invalid})
# AuthenticationError, "No code provided by Spotify. Authorize your app again"
authenticated?(conn)
refresh(conn)

Attempts to refresh your access token if the connection cookie exits.

tokens_present?(conn)

Checks for refresh and access tokens

## Example: ##

defmodule PlayListController do
  plug :check_tokens

  def check_tokens do
    unless Spotify.Authentication.tokens_present?(conn) do
      redirect conn, to: authorization_path(:authorize)
    end
  end
end