このアップデート:
時間のフォーマットの互換性を修正するようになって1 GFアップグレードV1.10.1、
最終更新日:
同時に除去マルチログインのサポート、設定可能なユーザのログインまたはログインに参加
入門
サーバによって実装ベースのトークンプラグ-GFのフレームワークは、認証トークン認証、すでに完全にオンライン認証トークン、およびモードをクラスタリングするためのサポートをサポートし、シンプルを使用するには、保証することができます。
- Gcache支持体は、スタンドアロンおよびクラスタモードをgredis。
# 配置文件
[gtoken]
# 缓存模式 1 gcache 2 gredis
cache-mode = 1
# 是否支持多端登录
multi-login = true
- これは、単純な認証トークンをサポートしています
- 自動更新機能を追加しましたキャッシング
// 注:通过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:=&gtoken.GfToken { LOGINPATH: "/ログイン"、 LoginBeforeFunc:loginFunc、 LogoutPath: "/ユーザー/ログアウト"、 AuthPaths:g.SliceStr { "/ユーザー/ *"、 "/システム/ *" }、 } gtoken.Start()
ログインメソッドの実装
ログイン(R * ghttp.Request)(文字列、インターフェイス{}){FUNC = r.GetPostString( "ユーザ名"):ユーザ名 passwdの:= r.GetPostString( "のpasswd") // TODO进行登录校验 戻りユーザ名、 " " }
ロジックテスト
Api_test.go走行テストし、結果を表示、検証ロジックの説明:
- ユーザー情報へのアクセスは、ヒントはトークン運びません
- ログインすると、通常のアクセストークンを運びます
- ログアウトに成功
- 未登録ことを示唆し、トークンの訪問を行う前に
--- PASS:TestSystemUser(0.00s) api_test.go:43:1ないログインおよび訪問ユーザ api_test.go:50:{ "コード": - 1、 "データ": ""、 "MSG": "クエリトークン失敗"} api_test.go:63:2ログインおよび訪問ユーザの実行 api_test.goを:66:{"コード":0、" MSG ":"成功」、 "データ"、 "システムユーザ"} api_test.go :72:3ログアウト実行 api_test.go:75:{ "コード":0、 "MSG": "成功"、 "データ": "ログアウト成功"} api_test.go:81:4訪問ユーザ api_test.go :86:{ "コード": - 1、 "MSG": "ログインタイムアウトかログイン"、 "データ": ""}
感謝
- GFフレームワーク https://github.com/gogf/gf