gtoken v1.3.1 发布,gf 升级为最新 v1.9.1
gtoken
本次主要针对gf最新版本v1.9.1进行了适配,预祝gf v1.9.1能够得到更多关注和认可;
本次更新:
- gf升级为V1.9.1;
- 优化resp结构体目录;
- 优化example目录结构;
介绍
基于gf框架的token插件,通过服务端验证方式实现token认证;已完全可以支撑线上token认证,并支持集群模式;使用简单,大家可以放心使用;
- 支持单机gcache和集群gredis模式;
# 配置文件 # 缓存模式 1 gcache 2 gredis cache-mode = 2
- 支持简单token认证
- 加入缓存自动续期功能
// 注:通过MaxRefresh,默认当用户第五天访问时,自动再进行五天续期 // 超时时间 默认10天 Timeout int // 缓存刷新时间 默认为超时时间的一半 MaxRefresh int
- 框架使用简单,只需要设置登录验证方法以及登录、登出、拦截路径即可;
- github地址:https://github.com/goflyfox/gtoken
- gitee地址:https://gitee.com/goflyfox/gtoken
安装教程
- gopath模式:
go get https://github.comgoflyfox/gtoken
- 或者 使用go.mod添加 :
require github.comgoflyfox/gtoken last
使用说明
只需要配置登录路径、登出路径、拦截路径以及登录校验实现即可
// 启动gtoken gtoken := >oken.GfToken{ LoginPath: "/login", LoginBeforeFunc: loginFunc, LogoutPath: "/user/logout", AuthPaths: g.SliceStr{"/user/*", "/system/*"}, } gtoken.Start()
登录方法实现
func Login(r *ghttp.Request) (string, interface{}) { username := r.GetPostString("username") passwd := r.GetPostString("passwd") // TODO 进行登录校验 return username, "" }
逻辑测试
可运行api_test.go进行测试并查看结果;验证逻辑说明:
- 访问用户信息,提示未携带token
- 登录后,携带token访问正常
- 登出成功
- 携带之前token访问,提示未登录
--- PASS: TestSystemUser (0.00s) api_test.go:43: 1. not login and visit user api_test.go:50: {"code":-1,"data":"","msg":"query token fail"} api_test.go:63: 2. execute login and visit user api_test.go:66: {"code":0,"msg":"success","data":"system user"} api_test.go:72: 3. execute logout api_test.go:75: {"code":0,"msg":"success","data":"logout success"} api_test.go:81: 4. visit user api_test.go:86: {"code":-1,"msg":"login timeout or not login","data":""}
感谢
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Proxy-Go v8.2 发布,内网穿透P2P!
Proxy是golang实现的高性能http,https,websocket,tcp,udp,socks5代理服务器,支持正向代理、反向代理、透明代理、内网穿透、TCP/UDP端口映射、SSH中转、TLS加密传输、协议转换、DNS防污染智能代理、前置CDN/Nginx反代、代理连接重定向。 更新内容: 优化了内网穿透传输,提升了速度。 内网穿透server增加了--server-id参数。 内网穿透增加了p2p支持,server和client端nat网络环境满足p2p的情况下,可以开启server和client的p2p传输,流量不再经过bridge,如果打洞失败会使用bridge进行中转。 内网穿透增加了客户端key白名单参数--client-keys,格式可以是: a.文件名,文件内容一行一个客户端key只能包含数字字母下划线,也就是客户端启动参数--k的值,只有客户端key在此白名单的客户端才能连接。# 开头的行,为注释。 b.“base64://”开头的base64编码的上面a说明的文件内容,比如:base64://ajfpoajsdfa= c.”str://“开头的英文逗号分割...
- 下一篇
gmanager v0.1.1 发布,基于 gf 的管理平台
gmanager是基于gf框架的管理平台,具备登录、认证、组织机构、用户、角色、菜单和日志管理; 本次主要针对gf最新版本v1.9.1进行了适配,预祝gf v1.9.1能够得到更多关注和认可; 更新说明 1. 升级gf为最新版本v1.9.1; 2. gtoken改为module引用; 3. 修改gdb传参格式; 4. 修复部分bug; 日志管理: gmanager 介绍 基于gf框架的管理平台,支撑登录、认证、组织机构、用户、角色、菜单、日志 注:此项目基本功能已具备,暂供学习go或者gf框架的小伙伴参考; github地址:https://github.com/goflyfox/gmanager gitee地址:https://gitee.com/goflyfox/gmanager 安装教程 从git下载项目: git clonehttps://github.com/goflyfox/gmanager 安装mysql数据库,创建db,运行deploy下gmanager.sql脚本 修改config下config.toml配置文件 # 数据库配置 [database]...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6