Documentation
¶
Index ¶
- func GetCookie(r *http.Request, cookieName string) (*http.Cookie, error)
- func GetSession(r *http.Request, cookieName string, sessionStore SessionStore) (*sessions.Session, error)
- func NewState() (string, error)
- func RemoveCookie(w http.ResponseWriter, cookieName string, v Config)
- func RemoveSession(r *http.Request, w http.ResponseWriter, cookieName string, ...) error
- func SetCookie(w http.ResponseWriter, value string, cookieName string, v Config)
- func SetCookieB64(w http.ResponseWriter, body []byte, cookieName string, v Config) string
- func SetSession(r *http.Request, w http.ResponseWriter, value, cookieName, valueName string, ...) error
- func SetSessionB64(r *http.Request, w http.ResponseWriter, body []byte, ...) (string, error)
- type Config
- type OptionsParse
- type SessionStore
- type Token
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetSession ¶
func NewState ¶ added in v0.7.0
NewState generates cryptographically secure random state with base64 URL encoding.
func RemoveCookie ¶
func RemoveCookie(w http.ResponseWriter, cookieName string, v Config)
func RemoveSession ¶
func RemoveSession(r *http.Request, w http.ResponseWriter, cookieName string, sessionStore SessionStore) error
func SetCookieB64 ¶
func SetSession ¶
func SetSession(r *http.Request, w http.ResponseWriter, value, cookieName, valueName string, sessionStore SessionStore) error
func SetSessionB64 ¶
func SetSessionB64(r *http.Request, w http.ResponseWriter, body []byte, cookieName, valueName string, sessionStore SessionStore) (string, error)
Types ¶
type Config ¶
type Config struct {
// Domain for defines the host to which the cookie will be sent.
Domain string `cfg:"domain"`
// Path that must exist in the requested URL for the browser to send the Cookie header.
Path string `cfg:"path"`
// MaxAge the number of seconds until the cookie expires.
MaxAge int `cfg:"max_age"`
// Secure to cookie only sent over HTTPS.
Secure bool `cfg:"secure"`
// SameSite for Lax 2, Strict 3, None 4.
SameSite http.SameSite `cfg:"same_site"`
// HttpOnly for true for not accessible by JavaScript.
HttpOnly bool `cfg:"http_only"`
}
type OptionsParse ¶
type OptionsParse func(*optionsParse)
func WithBase64 ¶
func WithBase64(v bool) OptionsParse
type SessionStore ¶
type Token ¶
type Token struct {
AccessToken string `json:"access_token"`
ExpiresIn int `json:"expires_in"`
RefreshExpiresIn int `json:"refresh_expires_in"`
RefreshToken string `json:"refresh_token"`
TokenType string `json:"token_type"`
NotBeforePolicy int `json:"not-before-policy"`
SessionState string `json:"session_state"`
Scope string `json:"scope"`
IDToken string `json:"id_token"`
}
Click to show internal directories.
Click to hide internal directories.