Documentation ¶
Overview ¶
Package facebook provides Facebook OAuth2 login and callback handlers.
Index ¶
- Variables
- func CallbackHandler(config *oauth2.Config, success, failure http.Handler) http.Handler
- func LoginHandler(config *oauth2.Config, failure http.Handler) http.Handler
- func StateHandler(config gologin.CookieConfig, success http.Handler) http.Handler
- func WithUser(ctx context.Context, user *User) context.Context
- type User
Constants ¶
This section is empty.
Variables ¶
var (
ErrUnableToGetFacebookUser = errors.New("facebook: unable to get Facebook User")
)
Facebook login errors
Functions ¶
func CallbackHandler ¶
CallbackHandler handles Facebook redirection URI requests and adds the Facebook access token and User to the ctx. If authentication succeeds, handling delegates to the success handler, otherwise to the failure handler.
func LoginHandler ¶
LoginHandler handles Facebook login requests by reading the state value from the ctx and redirecting requests to the AuthURL with that state value.
func StateHandler ¶
StateHandler checks for a state cookie. If found, the state value is read and added to the ctx. Otherwise, a non-guessable value is added to the ctx and to a (short-lived) state cookie issued to the requester.
Implements OAuth 2 RFC 6749 10.12 CSRF Protection. If you wish to issue state params differently, write a http.Handler which sets the ctx state, using oauth2 WithState(ctx, state) since it is required by LoginHandler and CallbackHandler.