当前位置: 首页 > news >正文

韶关市住房和城乡建设管理局网站合肥seo优化外包公司

韶关市住房和城乡建设管理局网站,合肥seo优化外包公司,wordpress如何更换编辑器,ubuntu 14 wordpress文章目录 初始化项目加密一步一步编写程序另一个参数--加密方式关于StandardClaims 解密解析出来的怎么用关于`MapClaims`上面使用结构体的全代码实战项目关于验证这个项目的前端初始化项目 自然第一步是暗转jwt-go的依赖啦 #go get github.com/golang-jwt/jwt/v5 go get githu…

文章目录

    • 初始化项目
    • 加密
      • 一步一步编写程序
      • 另一个参数--加密方式
      • 关于StandardClaims
    • 解密
      • 解析出来的怎么用
    • 关于`MapClaims`
    • 上面使用结构体的全代码
    • 实战项目
    • 关于验证这个项目的前端

初始化项目

自然第一步是暗转jwt-go的依赖啦

#go get github.com/golang-jwt/jwt/v5
go get github.com/dgrijalva/jwt-go

加密

一步一步编写程序

  1. 首先在main()函数中写入
package mainimport ("github.com/dgrijalva/jwt-go"
)func main() {//jwt.NewWithClaims(Claims)jwt.NewWithClaims()
}

查看jwt.NewWithClaims()函数
在这里插入图片描述

Claims基础结构

package mainimport ("github.com/dgrijalva/jwt-go"
)type MyClaims struct {jwt.StandardClaims
}func main() {//jwt.NewWithClaims(Claims)jwt.NewWithClaims()
}

另一个参数–加密方式

package mainimport ("github.com/dgrijalva/jwt-go"
)type MyClaims struct {UserName string `json:"username"`jwt.StandardClaims
}func main() {//jwt.NewWithClaims(加密方式,Claims)jwt.NewWithClaims(jwt.SigningMethodHS256,MyClaims) //当然这里不能是结构体(MyClaims)而是结构体实例
}

关于StandardClaims

type StandardClaims struct {Audience  string `json:"aud,omitempty"`	//ExpiresAt int64  `json:"exp,omitempty"` //过期时间Id        string `json:"jti,omitempty"` //IssuedAt  int64  `json:"iat,omitempty"` //Issuer    string `json:"iss,omitempty"` //签发人NotBefore int64  `json:"nbf,omitempty"` //什么时间开始生效Subject   string `json:"sub,omitempty"` //
}
package mainimport ("fmt""github.com/dgrijalva/jwt-go""time"
)type MyClaims struct {UserName string `json:"username"`jwt.StandardClaims
}func main() {c := MyClaims{UserName: "AllYourBase",StandardClaims: jwt.StandardClaims{NotBefore: time.Now().Unix() - 60,      //当前时间的一分钟之前生效ExpiresAt: time.Now().Unix() + 60*60*2, //当前时间的俩小时Issuer:    "AllYourBase",               //用户名},}//jwt.NewWithClaims(加密方式,Claims)token := jwt.NewWithClaims(jwt.SigningMethodHS256, c)fmt.Println(token)
}

这样我们的token就基本完成了,打印输出

&{ 0xc000008090 map[alg:HS256 typ:JWT] {chen { 1703288998  0 chen 1703296138 }}  false}

map[alg:HS256 typ:JWT]:头
{chen { 1703288998 0 chen 1703296138 }}:体
0xc000008090:加密串

我们要丢给前端使用肯定不行,所以要加密
加密部分(token来自于前面的代码)

mySigningKey := []byte("AllYourBase")
//token.SignedString(key)  //key:官方让我们放一个byte
s, err := token.SignedString(mySigningKey)
if err != nil {fmt.Printf("%s", err)
}
fmt.Println(s)
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImNoZW4iLCJleHAiOjE3MDMyODk0MzUsImlzcyI6ImNoZW4iLCJuYmYiOjE3MDMyOTY1NzV9.ZeMpAIzPyRoIQSjDctIuQEHxzYRaKQ9McqBfoq3SzCI

生成的这个加密就可以丢给前端去使用了

解密

如果前端吧串丢回来了怎么解密?

jwt.ParseWithClaims(token,解析的模板,func(token *jwt.Token)(interface{},error){})

写法

jwt.ParseWithClaims(s,&MyClaims,func
http://www.dt0577.cn/news/57160.html

相关文章:

  • 做网站要多少的服务器微商如何引流与推广
  • 有没有专门帮人做图的网站网络营销策略都有哪些
  • 全国建设部网站官网短视频seo营销
  • Wordpress微支付seo点击软件哪个好用
  • 企业宣传网站方案网站关键词优化推广哪家快
  • 装饰网站模板下载360摄像头海澳門地区限制解除
  • 检测网站开发关键词排名优化品牌
  • 网站建设使用什么软件有哪些网络营销比较常用的营销模式
  • 建筑钢结构网站广州百度快速排名优化
  • 做海鲜哪个b2b网站好点百度网盘免费下载
  • 房地产 网站 设计制作推广什么软件可以长期赚钱
  • 作品集制作网站关键词推广软件排名
  • 慈溪专业做网站公司茶叶网络营销策划方案
  • 1号网站建设 高端网站建设沈阳专业关键词推广
  • 广州正规的免费建站加盟网络营销推广公司
  • 校园网网站建设费用学校招生网络营销方案
  • 小程序模板平台哪家好什么软件可以优化关键词
  • 即墨网站设计招商外包
  • 自助建站系统是怎么实现seo优化技巧
  • 做网站的范本十大网络推广公司
  • 如何注册一个设计网站网络推广有哪些途径
  • 用什么给网站做测试谷歌搜索引擎优化
  • 做企业网站开发哪家好上海推广网站
  • 谷歌广告代理商seo零基础教学
  • 专门做外贸的的网站有哪些域名查询访问
  • 珠海建设局网站首页网站创建流程
  • 可以做语文阅读题的网站郑州关键词排名外包
  • 做网站的职业规划百度快速收录接口
  • 网站开发方法简答题西安seo包年服务
  • 重庆建设工程安全协会网站如何优化推广中的关键词