gtoken v1.3.5 发布,使用 gf 版本中间件
本次更新:
1. gf升级为V1.9.6
2. 使用gf新特性中间件实现认证
3. 优化认证处理逻辑,加入认证失败日志
介绍
基于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业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
YurunOAuthLogin v2.0.4 发布,新增支持 QQ 小程序授权
YurunOAuthLogin是一个 PHP 第三方登录授权 SDK,集成了多达9个平台,包括QQ、微信、微博、Github等常用接口。可以轻松嵌入支持 PHP >= 5.4 的任何系统中,2.0 版现已支持 Swoole 协程环境。 我们有完善的在线技术文档:http://doc.yurunsoft.com/YurunOAuthLogin API 文档:https://apidoc.gitee.com/yurunsoft/YurunOAuthLogin 大家在开发中肯定会对接各种各样的第三方平台,我个人精力有限,欢迎各位来提交 PR (码云/Github),一起完善它,让它能够支持更多的平台,更加好用。 v2.0.4 更新日志 新增支持 QQ 小程序授权(code换sessionKey、解密) 新增支持微信小程序授权的数据解密(之前仅支持code换sessionKey) 安装 在您的composer.json中加入配置: { "require": { "yurunsoft/yurun-oauth-login": "~2.0" } } 支持的登录平台 QQ 微信网页扫...
- 下一篇
gmanager v0.1.3 发布,基于 gf 的管理平台
gmanager是基于gf框架的管理平台,具备登录、认证、组织机构、用户、角色、菜单和日志管理; 更新说明 1. gf版本升级到v1.9.6,gf版本问题修复 2. 使用最新版本的gtoken模块,限制加入index,接口认证更合理 3. 路由使用最新特性分组 4. 将hook改为中间件middleware 5. 部分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] l...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Hadoop3单机部署,实现最简伪集群
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果