go使用jwt对前端用户身份通过token认证


背景前沿:近期项目需要对前端提供的部分接口做身份认证拦截,需要在登录成功后生成一个token返回给前端,后续需要进行验证的接口需要在请求头中携带token才能正常请求数据

一、导入工具包jwt-go生成token

  1. 命令导入安装包
go get -u github.com/dgrijalva/jwt-go
  1. 可在使用时包头直接引入
"github.com/dgrijalva/jwt-go"
  1. 一些后续使用时需要的基础结构体
// JwtClaims 创建自己的Claims
type JwtClaims struct {
	*jwt.StandardClaims
	//用户编号
	UID      string
	Username string
}

// 登录的参数
type UserLogin struct {
	UserName  string  `json:"user_name"`  //用户名
	Password  string  `json:"password"`   //密码,对明文密码进行sha256
}
var (
	//盐
	secret                 = []byte("wondersafebox") // 后续加密增加盐增加复杂度
	TokenExpired     error = errors.New("Token is expired") // token错误类型提炼
	TokenNotValidYet error = errors.New("Token not active yet") // token错误类型提炼
	TokenMalformed   error = errors.New("That's not even a token") // token错误类型提炼
	TokenInvalid     error = error
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值