Documentation ¶
Index ¶
Constants ¶
View Source
const ( OKCode = 2000 InternalServerErrorCode = 5000 ErrCodeMalformed = 4001 // token格式错误 ErrCodeExpired = 4002 // token过期 ErrCodeNotValidYet = 4003 // token尚未生效 ErrCodeSignatureInvalid = 4004 // token签名无效 ErrCodeInvalidRole = 4005 // token权限不符 ErrCodeNoAuthHeader = 4006 // 没有对应的请求头 ErrCodeMalformedReq = 4007 // 请求头格式不正确 )
工具返回代码
View Source
const ( ROOTROLE = 4 // root权限,最大的权限,整个系统的超级管理权限 ADMINROLE = 3 // admin权限,只能由root授予,拥有管理用户的权限,但不具备修改root的权限 USERROLE = 2 // user权限,普通用户权限 TEMPROLE = 1 // temp权限,临时权限,该权限仅用于注册和修改密码的临时使用 )
不同身份权限,数字越大,权限越大。高权限用户可以执行低权限用户的所有操作
Variables ¶
View Source
var ( MalformedError = errors.New("malformed jwt") ExpiredAndDiedError = errors.New("expired jwt") ExpiredButCanSaveError = errors.New("expired jwt, but can save it") NotValidError = errors.New("invalid jwt") SignatureError = errors.New("expired jwt") InvalidRoleError = errors.New("invalid role") UnknownError = errors.New("unknown jwt error") )
工具错误类型
Functions ¶
func GenToken ¶
func GenToken(claims *TokenClaims) (string, error)
* 生成token字串 * 参数: * 1. claims *TokenClaims token参数
func JWTAuthMiddleware ¶
* JWT中间件
Types ¶
type TokenClaims ¶
type TokenClaims struct { Email string // 用户的email Role string // 用户的身份登记 Exp int // token过期时间,以秒计数 Issuer string // 签发人 SECRET string // token secret PUBLIC string // token public jwt.StandardClaims // standard claims,无需用户设定 }
token claims
func ParseToken ¶
func ParseToken(token string, roleRequired int, secret string) (*TokenClaims, error)
* 解析token * 参数: * 1. token string:要解析的token字串 * 2. roleRequired int:验证通过需要的权限等级 * 3. secret string:解码密钥
Click to show internal directories.
Click to hide internal directories.