...

Source file src/github.com/gin-contrib/sessions/session_options_go1.11.go

Documentation: github.com/gin-contrib/sessions

     1  // +build go1.11
     2  
     3  package sessions
     4  
     5  import (
     6  	gsessions "github.com/gorilla/sessions"
     7  	"net/http"
     8  )
     9  
    10  // Options stores configuration for a session or session store.
    11  // Fields are a subset of http.Cookie fields.
    12  type Options struct {
    13  	Path   string
    14  	Domain string
    15  	// MaxAge=0 means no 'Max-Age' attribute specified.
    16  	// MaxAge<0 means delete cookie now, equivalently 'Max-Age: 0'.
    17  	// MaxAge>0 means Max-Age attribute present and given in seconds.
    18  	MaxAge   int
    19  	Secure   bool
    20  	HttpOnly bool
    21  	// rfc-draft to preventing CSRF: https://tools.ietf.org/html/draft-west-first-party-cookies-07
    22  	//   refer: https://godoc.org/net/http
    23  	//          https://www.sjoerdlangkemper.nl/2016/04/14/preventing-csrf-with-samesite-cookie-attribute/
    24  	SameSite http.SameSite
    25  }
    26  
    27  func (options Options) ToGorillaOptions() *gsessions.Options {
    28  	return &gsessions.Options{
    29  		Path:     options.Path,
    30  		Domain:   options.Domain,
    31  		MaxAge:   options.MaxAge,
    32  		Secure:   options.Secure,
    33  		HttpOnly: options.HttpOnly,
    34  		SameSite: options.SameSite,
    35  	}
    36  }
    37  

View as plain text