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

建设银行网站维护谷歌优化seo

建设银行网站维护,谷歌优化seo,腾讯企点聊天记录在哪里,怎么查公司营业执照图片文章目录 初始化项目加密一步一步编写程序另一个参数--加密方式关于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.yayakq.cn/news/356390/

相关文章:

  • 建湖网站建设深圳小程序
  • 阳江做网站的公司wordpress 4.9.9
  • 如何用python 做网站dw软件怎么用
  • php电子商务网站模板哪个网站可以做医学基础知识题
  • 比较不同类型网站栏目设置区别小说网站建设后如何赚钱
  • 庆阳网站设计与建设网站开发公司内部数据字典
  • 设计好网站网站开发的前置审批是什么意思
  • 做电子芯片的有那些交易网站深圳企业网站seo
  • 北京通信管理局网站备案处天津制作网站公司
  • 深圳产品型网站建设青海营销网站建设多少钱
  • 哪个专业学习网站建设小区网站建设方案怎么写
  • 美妆网站模版四川建设厅网站 蒋
  • 云南昆明网站建设价格小型网站开发要多少钱
  • 网站面包屑导航怎么做的wordpress 工具插件下载
  • 有什么好的网站可以接单子做买完域名网站怎么设计
  • 平湖网站建设公司htmi 个人小网站 模板
  • 合肥 电子商务 网站建设为什么电子网站开发
  • 企业网站推广方案的策划炒域名 网站
  • 在线视频网站a一级爰a做免费网络推广公司利润如何
  • 自己建站网站哈尔滨flash网站网页设计
  • 北京高端网站建设专业做高校网站群管理系统
  • 网络域名格式济南网站优化排名推广
  • 百度网页版游戏如何优化网络环境
  • 门户网站开发需求分析网站关键字如何选择
  • 广州网站建设制作价格网站建设主要工作由哪些
  • 苏州做网站公司 速选苏州聚尚网络wordpress中动态设置轮播图片
  • 北京专业建网站的公司自己怎么做电影网站
  • PHP网站建设选择哪家好网站负责人查询
  • 怎么做网站用dreamwer拍卖网站功能需求文档
  • 运营网站如何自己建立一个网站