Я пытаюсь исключить маршрут из моей защищенной группы в Джине, чтобы быть доступным для неаутентифицированных пользователей.
Итак, у меня есть защищенная группа, которая использует базовый маршрут, и я хотел бы предоставить /api/health
, чтобы она не использовала безопасный authenticateUser()
, который затем перенаправляет на страницу входа.
Я объявляю свои маршруты и группы следующим образом:
router.GET("/api/health", func(c *gin.Context) {
c.Status(http.StatusOK)
})
secure := router.Group("/")
secure.Use(authenticateUser())
, и это моя authenticateUser
функция
func authenticateUser() gin.HandlerFunc {
return func(c *gin.Context) {
session := sessions.Default(c)
userId, name, avatar, orgId, orgName, role := session.User()
if userId == sessions.NoUserId {
c.Abort()
c.Redirect(http.StatusFound, "/login")
return
}
auth.SetUser(c, userId, name, avatar, orgId, orgName, role)
c.Next()
}
}