yinbentan
2024-06-28 dfa2a5e967d70081eb3e98c6b77900e3800be273
开发环境dev跳过登录验证
1个文件已添加
3个文件已修改
35 ■■■■■ 已修改文件
conf/config.go 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
constvar/env.go 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
middleware/jwt.go 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
middleware/reset_pwd.go 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
conf/config.go
@@ -3,6 +3,7 @@
import (
    "log"
    "os"
    "wms/constvar"
    "wms/pkg/logx"
    "wms/pkg/mysqlx"
@@ -30,6 +31,7 @@
        JWTSecret   string
        FileServer  string //文件服务器地址
        ServerId    string //服务ID
        Env         constvar.Env
        GrpcPort    string //grpc端口号
        CompanyName string //公司名
    }
constvar/env.go
New file
@@ -0,0 +1,21 @@
package constvar
type Env string
const (
    EnvDev  = "dev"
    EnvTest = "test"
    EnvProd = "prod"
)
func (e Env) IsProd() bool {
    return e == EnvProd
}
func (e Env) IsDev() bool {
    return e == EnvDev
}
func (e Env) IsTest() bool {
    return e == EnvTest
}
middleware/jwt.go
@@ -3,12 +3,17 @@
import (
    "github.com/gin-gonic/gin"
    "strings"
    "wms/conf"
    "wms/pkg/contextx"
    "wms/pkg/ecode"
)
func JWTAuth() gin.HandlerFunc {
    return func(c *gin.Context) {
        if conf.WebConf.Env.IsDev() {
            c.Next()
            return
        }
        ctx := new(contextx.Context).SetCtx(c)
        // 我们这里jwt鉴权取头部信息 Authorization 登录时回返回token信息 这里前端需要把token存储到cookie或者本地localStorage中 不过需要跟后端协商过期时间 可以约定刷新令牌或者重新登录
        token := c.Request.Header.Get("Authorization")
middleware/reset_pwd.go
@@ -2,6 +2,7 @@
import (
    "github.com/gin-gonic/gin"
    "wms/conf"
    "wms/pkg/contextx"
    "wms/pkg/ecode"
    "wms/request"
@@ -9,10 +10,14 @@
func VerifyResetPwd() gin.HandlerFunc {
    return func(c *gin.Context) {
        if conf.WebConf.Env.IsDev() {
            c.Next()
            return
        }
        ctx := new(contextx.Context).SetCtx(c)
        params, ok := c.Get("claims")
        if !ok {
            c.Abort()
            c.Next()
            return
        }
        claims := params.(*request.CustomClaims)