Documentation ¶
Overview ¶
Package box implements the OAuth2 protocol for authenticating users through box. This package can be used as a reference implementation of an OAuth2 provider for Goth.
Index ¶
- type Provider
- func (p *Provider) BeginAuth(state string) (goth.Session, error)
- func (p *Provider) Client() *http.Client
- func (p *Provider) Debug(debug bool)
- func (p *Provider) FetchUser(session goth.Session) (goth.User, error)
- func (p *Provider) Name() string
- func (p *Provider) RefreshToken(refreshToken string) (*oauth2.Token, error)
- func (p *Provider) RefreshTokenAvailable() bool
- func (p *Provider) SetName(name string)
- func (p *Provider) UnmarshalSession(data string) (goth.Session, error)
- type Session
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Provider ¶
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 Box.
func New ¶
New creates a new Box provider and sets up important connection details. You should always call `box.New` to get a new provider. Never try to create one manually.
func (*Provider) RefreshToken ¶
RefreshToken get new access token based on the refresh token
func (*Provider) RefreshTokenAvailable ¶
RefreshTokenAvailable refresh token is provided by auth provider or not
func (*Provider) SetName ¶
SetName is to update the name of the provider (needed in case of multiple providers of 1 type)
func (*Provider) UnmarshalSession ¶
UnmarshalSession wil unmarshal a JSON string into a session.
type Session ¶
Session stores data during the auth process with Box.
func (*Session) Authorize ¶
Authorize the session with Box and return the access token to be stored for future use.
func (Session) GetAuthURL ¶
GetAuthURL will return the URL set by calling the `BeginAuth` function on the Box provider.