123456789101112131415161718192021222324252627282930 |
- package middleware
- import (
- "github.com/gogf/gf/frame/g"
- "github.com/gogf/gf/net/ghttp"
- )
- func generateDuplicateKey(r *ghttp.Request) string {
- // 用请求的uri和
- return r.RequestURI + r.GetRemoteIp()
- }
- func DuplicateVerify(r *ghttp.Request) {
- key := generateDuplicateKey(r)
- //DoVar 方法用于执行 Redis 命令,并返回结果
- //v, _ := g.Redis().DoVar("GET", key)
- //结果转为整数类型
- //if v.Int() != 0 {
- // r.Response.WriteJson(g.Map{
- // "code": 500,
- // "msg": "操作过于频繁",
- // })
- //
- // return
- //}
- g.Redis().Do("SETEX", key, 1, 1)
- r.Middleware.Next()
- }
|