golang jwt鉴权
总结一下jwt的使用
从22年旧博客贴过来的文,稍微进行了整理。
1. 安装
终端安装即可:
1 |
|
2. 使用
首先定义结构体用来生成token
1 |
|
其中jwt.StandardClaims为标准claims结构
设置过期时间 ExpiretTime=2d
1 |
|
设置签发人
1
claim.Issuer = "SYMC"
生成token,第一个参数为加密方式,第二个需要传入自定义的结构体,之后加盐
1 |
|
实际上使用是,并不应该将SignedString写到代码中,一是不方便修改,二是在使用代码托管平台上传代码时会泄密。应该使用viper等工具读取配置。
解析函数,第一个参数为需要解析的token字符串,第二个参数为我们自定义的结构,第三个为固定格式的函数写法
1 |
|
通过断言取得claim(我们自定义的结构)指针
1 |
|
3. 完整代码
完整代码如下:
1 |
|
4. 中间件
用于解析的中间件:
1 |
|
值得注意的是c.set是用于c(Gin.Context类型)中传递数据,通过c.get取得内容
golang jwt鉴权
https://symcreg.github.io/2025/06/27/golang-jwt鉴权/