Documentation ¶
Index ¶
- Variables
- 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 ProviderIndex
- type Session
- type UserAuthInfo
Constants ¶
This section is empty.
Variables ¶
View Source
var ( AuthURL = "http://localhost:8070/oauth/authorize" TokenURL = "http://localhost:8070/oauth/access_token" ProfileURL = "http://localhost:8070/api/v1/auth" )
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 }
func New ¶
New creates a new Github provider, and sets up important connection details. You should always call `github.New` to get a new Provider. Never try to create one manually.
func NewCustomisedURL ¶
func NewCustomisedURL(clientKey, secret, callbackURL, authURL, tokenURL, profileURL string, scopes ...string) *Provider
NewCustomisedURL is similar to New(...) but can be used to set custom URLs to connect to
func (*Provider) RefreshToken ¶
func (*Provider) RefreshTokenAvailable ¶
type ProviderIndex ¶
func NewAuth ¶
func NewAuth() *ProviderIndex
type Session ¶
func (*Session) Authorize ¶
Authorize the session with Github 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 Github provider.
type UserAuthInfo ¶
type UserAuthInfo struct { Id uint64 `json:"id,omitempty" gorm:"primaryKey;"` Name string `json:"name,omitempty" gorm:"size:10;not null" annotation:"名字"` Role uint64 `json:"role,omitempty" gorm:"type:int2;default:0"` Status uint64 `json:"status,omitempty" gorm:"type:int2;default:0"` }
用户授权信息
Click to show internal directories.
Click to hide internal directories.