Documentation
¶
Index ¶
- type Session
- func (sess *Session) Claims() session.Claims
- func (sess *Session) Del(ctx context.Context, key string) error
- func (sess *Session) Destroy(ctx context.Context) error
- func (sess *Session) Get(ctx context.Context, key string) ekit.AnyValue
- func (sess *Session) Set(ctx context.Context, key string, val any) error
- type SessionProvider
- func (rsp *SessionProvider) Destroy(ctx *gctx.Context) error
- func (rsp *SessionProvider) Get(ctx *gctx.Context) (session.Session, error)
- func (rsp *SessionProvider) NewSession(ctx *gctx.Context, uid int64, jwtData map[string]string, ...) (session.Session, error)
- func (rsp *SessionProvider) RenewAccessToken(ctx *ginx.Context) error
- func (rsp *SessionProvider) UpdateClaims(ctx *gctx.Context, claims session.Claims) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Session ¶
type Session struct {
// contains filtered or unexported fields
}
Session 生命周期应该和 http 请求保持一致
type SessionProvider ¶
type SessionProvider struct { TokenCarrier session.TokenCarrier // contains filtered or unexported fields }
SessionProvider 默认情况下,产生的 Session 一个 token, 而如何返回,以及如何携带,取决于具体的 TokenCarrier 实现 很多字段并没有暴露,如果你需要自定义,可以发 issue
func NewSessionProvider ¶
func NewSessionProvider(client redis.Cmdable, jwtKey string, expiration time.Duration) *SessionProvider
NewSessionProvider 用于管理 Session
func (*SessionProvider) NewSession ¶
func (rsp *SessionProvider) NewSession(ctx *gctx.Context, uid int64, jwtData map[string]string, sessData map[string]any) (session.Session, error)
NewSession 的时候,要先把这个 data 写入到对应的 token 里面
func (*SessionProvider) RenewAccessToken ¶
func (rsp *SessionProvider) RenewAccessToken(ctx *ginx.Context) error
func (*SessionProvider) UpdateClaims ¶
UpdateClaims 在这个实现里面,claims 同时写进去了
Click to show internal directories.
Click to hide internal directories.