
Gin
文章平均质量分 68
golang后端框架
IT艺术家-rookie
IT艺术家
展开
-
源码分析---gin框架的http服务创建,路由注册,请求处理
当一个goroutine需要从池中获取对象时,它首先会检查local指向的poolLocal实例是否有可用的对象。否则,该goroutine会将local指向的poolLocal实例中的所有对象移动到victim中,并将local指向victim。当需要从池中获取对象时,如果池中没有可用的对象,则会调用New函数创建一个新的对象。当一个goroutine使用完一个对象时,它会将该对象返回给池。就是在group对象的handle数组中加入了当前新注册的handle,但是是通过创建新的数组替换旧的数组来做的。原创 2023-03-13 17:59:18 · 792 阅读 · 0 评论 -
Gin--使用cookie(跨域共享,第三方cookie写入)
有三个域名A .top,x.A.top,y.A.top 也就是在A.top产生的cookie,可以与,x.A.top和y.A.top共享 要想cookie在跨域在相同父级域名下共享,那么domian属性就应该为:“.A.top” import ( "net/http" "net/url" ) var c *gin.centext userCookie := &http.Cookie{Name: 'user', Value: url.QueryEscape(token), Path: "/"原创 2022-01-21 09:06:13 · 3695 阅读 · 0 评论 -
Gin-使用JWT的非对称加密算法RSA512签名
1.RSA非对称加密 RSA非对称加密的是对签名的加密,不是对jwt的头部,荷载加密,头部和荷载用的时base64加密,从jwt官网就可以知道 token是通过拼字符串拼在一起的。 从而得出结论: 1.荷载里面可以放自定义的数据,但是不能放敏感数据。 如上图,就算拿着token到这里,可以看见header,payload,但是左下角显示的时无效的签名Invalid Signature,因为没有放入公钥 输入对应的公钥,就可以看见,完成了校验。从而就可以知道公钥和密钥的使用方式和场景。 2.公钥和密钥原创 2021-12-06 16:39:12 · 3790 阅读 · 0 评论 -
Gin中简单使用JWT
包 "github.com/dgrijalva/jwt-go" 1.jwt配置 //定义负载 type Claims struct { model.User //这是任意的 jwt.StandardClaims } //过期时间 const TokenExpireDuration = time.Second * 120 //设置密码 var secret = []byte("secret") //生成token func GetToken(user model.User) (string, e原创 2021-11-12 11:00:49 · 554 阅读 · 0 评论