goth: github.com/markbates/goth/providers/dropbox Index | Files

package dropbox

import "github.com/markbates/goth/providers/dropbox"

Package dropbox implements the OAuth2 protocol for authenticating users through Dropbox.

Index

Package Files

dropbox.go

type Provider Uses

type Provider struct {
    ClientKey   string
    Secret      string
    CallbackURL string
    HTTPClient  *http.Client
    // contains filtered or unexported fields
}

Provider is the implementation of `goth.Provider` for accessing Dropbox.

func New Uses

func New(clientKey, secret, callbackURL string, scopes ...string) *Provider

New creates a new Dropbox provider and sets up important connection details. You should always call `dropbox.New` to get a new provider. Never try to create one manually.

func (*Provider) BeginAuth Uses

func (p *Provider) BeginAuth(state string) (goth.Session, error)

BeginAuth asks Dropbox for an authentication end-point.

func (*Provider) Client Uses

func (p *Provider) Client() *http.Client

func (*Provider) Debug Uses

func (p *Provider) Debug(debug bool)

Debug is a no-op for the dropbox package.

func (*Provider) FetchUser Uses

func (p *Provider) FetchUser(session goth.Session) (goth.User, error)

FetchUser will go to Dropbox and access basic information about the user.

func (*Provider) Name Uses

func (p *Provider) Name() string

Name is the name used to retrieve this provider later.

func (*Provider) RefreshToken Uses

func (p *Provider) RefreshToken(refreshToken string) (*oauth2.Token, error)

RefreshToken refresh token is not provided by dropbox

func (*Provider) RefreshTokenAvailable Uses

func (p *Provider) RefreshTokenAvailable() bool

RefreshTokenAvailable refresh token is not provided by dropbox

func (*Provider) SetName Uses

func (p *Provider) SetName(name string)

SetName is to update the name of the provider (needed in case of multiple providers of 1 type)

func (*Provider) UnmarshalSession Uses

func (p *Provider) UnmarshalSession(data string) (goth.Session, error)

UnmarshalSession wil unmarshal a JSON string into a session.

type Session Uses

type Session struct {
    AuthURL string
    Token   string
}

Session stores data during the auth process with Dropbox.

func (*Session) Authorize Uses

func (s *Session) Authorize(provider goth.Provider, params goth.Params) (string, error)

Authorize the session with Dropbox and return the access token to be stored for future use.

func (*Session) GetAuthURL Uses

func (s *Session) GetAuthURL() (string, error)

GetAuthURL gets the URL set by calling the `BeginAuth` function on the Dropbox provider.

func (*Session) Marshal Uses

func (s *Session) Marshal() string

Marshal the session into a string

func (Session) String Uses

func (s Session) String() string

Package dropbox imports 8 packages (graph) and is imported by 18 packages. Updated 2017-02-14. Refresh now. Tools for package owners.