Documentation ¶
Index ¶
- type Authenticator
- type Client
- type DefaultAuthenticator
- func (a *DefaultAuthenticator) AuthURL(state string, opts ...oauth2.AuthCodeOption) string
- func (a *DefaultAuthenticator) Exchange(ctx context.Context, code string, opts ...oauth2.AuthCodeOption) (*oauth2.Token, error)
- func (a *DefaultAuthenticator) SpotifyClient(ctx context.Context, token *oauth2.Token, opts ...spotify.ClientOption) SpotifyClient
- func (a *DefaultAuthenticator) Token(ctx context.Context, state string, r *http.Request, ...) (*oauth2.Token, error)
- type NoOpAuthenticator
- func (*NoOpAuthenticator) AuthURL(state string, opts ...oauth2.AuthCodeOption) string
- func (*NoOpAuthenticator) Exchange(ctx context.Context, code string, opts ...oauth2.AuthCodeOption) (*oauth2.Token, error)
- func (*NoOpAuthenticator) SpotifyClient(ctx context.Context, token *oauth2.Token, opts ...spotify.ClientOption) SpotifyClient
- func (*NoOpAuthenticator) Token(ctx context.Context, state string, r *http.Request, ...) (*oauth2.Token, error)
- type SpotifyClient
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Authenticator ¶
type Authenticator interface { SpotifyClient(ctx context.Context, token *oauth2.Token, opts ...spotify.ClientOption) SpotifyClient AuthURL(state string, opts ...oauth2.AuthCodeOption) string Token(ctx context.Context, state string, r *http.Request, opts ...oauth2.AuthCodeOption) (*oauth2.Token, error) Exchange(ctx context.Context, code string, opts ...oauth2.AuthCodeOption) (*oauth2.Token, error) }
Authenticator is used to authenticate to spotify via oauth2 flow
type Client ¶
type Client struct { UserID string // contains filtered or unexported fields }
func (Client) AppendToPlaylist ¶
type DefaultAuthenticator ¶
type DefaultAuthenticator struct {
// contains filtered or unexported fields
}
func NewDefaultAuthenticator ¶
func NewDefaultAuthenticator(opts ...spotifyauth.AuthenticatorOption) *DefaultAuthenticator
func (*DefaultAuthenticator) AuthURL ¶
func (a *DefaultAuthenticator) AuthURL(state string, opts ...oauth2.AuthCodeOption) string
func (*DefaultAuthenticator) Exchange ¶
func (a *DefaultAuthenticator) Exchange(ctx context.Context, code string, opts ...oauth2.AuthCodeOption) (*oauth2.Token, error)
Exchange implements Authenticator
func (*DefaultAuthenticator) SpotifyClient ¶
func (a *DefaultAuthenticator) SpotifyClient(ctx context.Context, token *oauth2.Token, opts ...spotify.ClientOption) SpotifyClient
type NoOpAuthenticator ¶
type NoOpAuthenticator struct{}
func (*NoOpAuthenticator) AuthURL ¶
func (*NoOpAuthenticator) AuthURL(state string, opts ...oauth2.AuthCodeOption) string
AuthURL implements Authenticator
func (*NoOpAuthenticator) Exchange ¶
func (*NoOpAuthenticator) Exchange(ctx context.Context, code string, opts ...oauth2.AuthCodeOption) (*oauth2.Token, error)
Exchange implements Authenticator
func (*NoOpAuthenticator) SpotifyClient ¶
func (*NoOpAuthenticator) SpotifyClient(ctx context.Context, token *oauth2.Token, opts ...spotify.ClientOption) SpotifyClient
SpotifyClient implements Authenticator
type SpotifyClient ¶
type SpotifyClient interface { CurrentUser(ctx context.Context) (*spotify.PrivateUser, error) Search(ctx context.Context, query string, t spotify.SearchType, opts ...spotify.RequestOption) (*spotify.SearchResult, error) GetAlbumTracks(ctx context.Context, id spotify.ID, opts ...spotify.RequestOption) (*spotify.SimpleTrackPage, error) CreatePlaylistForUser(ctx context.Context, userID string, playlistName string, description string, public bool, collaborative bool) (*spotify.FullPlaylist, error) AddTracksToPlaylist(ctx context.Context, playlistID spotify.ID, trackIDs ...spotify.ID) (snapshotID string, err error) }
SpotifyClient is the interface to interact with spotify
Click to show internal directories.
Click to hide internal directories.