middleware.go 359 B

1234567891011121314151617181920
  1. package controller
  2. import (
  3. "github.com/gin-gonic/gin"
  4. )
  5. func (c *Controller) IsAuthenticated(ctx *gin.Context) {
  6. cookie, err := ctx.Cookie(AUTH_COOKIE_NAME)
  7. if err != nil {
  8. ctx.Redirect(302, "/login")
  9. ctx.AbortWithStatus(401)
  10. return
  11. }
  12. if !c.Cache.Read(cookie) {
  13. ctx.Redirect(302, "/login")
  14. ctx.AbortWithStatus(401)
  15. return
  16. }
  17. ctx.Next()
  18. }