Files
open-im-server/internal/cms_api/middleware/jwt_auth.go
T

27 lines
668 B
Go
Raw Normal View History

2022-01-21 18:39:57 +08:00
package middleware
import (
2022-02-12 17:13:31 +08:00
"Open_IM/pkg/common/log"
"Open_IM/pkg/common/token_verify"
2022-02-14 15:16:59 +08:00
"Open_IM/pkg/utils"
2022-08-30 01:38:23 +08:00
"net/http"
2022-01-21 18:39:57 +08:00
"github.com/gin-gonic/gin"
)
func JWTAuth() gin.HandlerFunc {
return func(c *gin.Context) {
2022-05-07 12:04:07 +08:00
ok, userID, errInfo := token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), "")
2022-02-14 15:16:59 +08:00
log.NewInfo("0", utils.GetSelfFuncName(), "userID: ", userID)
c.Set("userID", userID)
2022-02-12 17:13:31 +08:00
if !ok {
2022-05-07 12:04:07 +08:00
log.NewError("", "GetUserIDFromToken false ", c.Request.Header.Get("token"))
2022-02-12 17:13:31 +08:00
c.Abort()
2022-08-30 01:38:23 +08:00
c.JSON(http.StatusOK, gin.H{"errCode": 400, "errMsg": errInfo})
2022-02-12 17:13:31 +08:00
return
2022-05-07 12:04:07 +08:00
} else {
log.NewInfo("0", utils.GetSelfFuncName(), "failed: ", errInfo)
2022-02-12 17:13:31 +08:00
}
2022-01-21 18:39:57 +08:00
}
}