Documentation ¶
Index ¶
- Constants
- func TokenClientInterceptor(ctx context.Context, method string, req, reply interface{}, ...) error
- func TokenInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, ...) (interface{}, error)
- func TokenStreamClientInterceptor(ctx context.Context, desc *grpc.StreamDesc, cc *grpc.ClientConn, method string, ...) (grpc.ClientStream, error)
- func TokenStreamInterceptor(srv interface{}, ss grpc.ServerStream, info *grpc.StreamServerInfo, ...) error
- func WithToken(ctx context.Context, token *Token) context.Context
- type Config
- type JWT
- type RefreshToken
- type Token
Constants ¶
View Source
const ( // TokenKey 用户令牌key TokenKey = contextKey("X-Token") // TokenTypeAccess 令牌类型:访问 TokenTypeAccess = "access" // TokenTypeRefresh 令牌类型:刷新 TokenTypeRefresh = "refresh" // LoginTypePhone 登录类型:手机号 LoginTypePhone = "phone" // LoginTypeEmail 登录类型:邮箱 LoginTypeEmail = "email" )
View Source
const (
// PrivatePayloadName 私有载荷名称
PrivatePayloadName = "x_user_info"
)
Variables ¶
This section is empty.
Functions ¶
func TokenClientInterceptor ¶
func TokenClientInterceptor(ctx context.Context, method string, req, reply interface{}, cc *grpc.ClientConn, invoker grpc.UnaryInvoker, opts ...grpc.CallOption) error
TokenClientInterceptor 默认令牌客户端一元拦截器
func TokenInterceptor ¶
func TokenInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error)
TokenInterceptor 默认令牌服务端一元拦截器
func TokenStreamClientInterceptor ¶
func TokenStreamClientInterceptor(ctx context.Context, desc *grpc.StreamDesc, cc *grpc.ClientConn, method string, streamer grpc.Streamer, opts ...grpc.CallOption) (grpc.ClientStream, error)
TokenStreamClientInterceptor 默认令牌客户端流拦截器
func TokenStreamInterceptor ¶
func TokenStreamInterceptor(srv interface{}, ss grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error
TokenStreamInterceptor 默认令牌服务端流拦截器
Types ¶
type Config ¶
type Config struct { Issuer string // 签发者 SecretKey string // 密钥 ExpirationTime time.Duration // 过期时间 }
Config JWT相关配置
type JWT ¶
type JWT struct {
// contains filtered or unexported fields
}
JWT JWT结构详情
func (*JWT) CreateToken ¶
CreateToken 创建JWT字符串
func (*JWT) ParseToken ¶
ParseToken 解析JWT字符串
type RefreshToken ¶
type RefreshToken struct { TokenType string `json:"token_type"` // 令牌类型,固定为refresh RandomId string `json:"random_id"` // 随机id LoginType string `json:"login_type"` // 登录类型 UserId int64 `json:"user_id"` // 用户id CompanyId int64 `json:"company_id"` // 公司id Phone string `json:"phone"` // 手机号 }
RefreshToken 默认刷新令牌结构详情
type Token ¶
type Token struct { TokenType string `json:"token_type"` // 令牌类型,固定为access RandomId string `json:"random_id"` // 随机id LoginType string `json:"login_type"` // 登录类型 IsAdmin bool `json:"is_admin"` // 是否为超级管理员 UserId int64 `json:"user_id"` // 用户id DepartmentId int64 `json:"department_id"` // 部门id CompanyId int64 `json:"company_id"` // 公司id RoleIds []int64 `json:"role_ids"` // 角色id列表 }
Token 默认令牌结构详情
func FromContext ¶
FromContext 从context获取默认令牌数据
Click to show internal directories.
Click to hide internal directories.