Files
nixcn-cms/middleware/jwt.go
Asai Neko bd8eecbc7d
All checks were successful
Build Backend (NixCN CMS) TeamCity build finished
Build Frontend (NixCN CMS) TeamCity build finished
Fix dup err logic
Signed-off-by: Asai Neko <sugar@sne.moe>
2026-01-02 12:37:27 +08:00

31 lines
461 B
Go

package middleware
import (
"nixcn-cms/internal/cryptography"
"github.com/gin-gonic/gin"
)
func JWTAuth() gin.HandlerFunc {
return func(c *gin.Context) {
auth := c.GetHeader("Authorization")
token := new(cryptography.Token)
uid, err := token.HeaderVerify(auth)
if err != nil {
c.JSON(401, gin.H{"status": err.Error()})
return
}
if uid == "" {
c.Set("user_id", "")
c.Next()
return
}
c.Set("user_id", uid)
c.Next()
}
}