mirror of
https://github.com/eduardolat/pgbackweb.git
synced 2026-05-05 11:09:11 -05:00
Update web router to use rate limiting middleware
This commit is contained in:
@@ -3,13 +3,16 @@ package view
|
||||
import (
|
||||
"github.com/eduardolat/pgbackweb/internal/service"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/api"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/middleware"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/static"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/web"
|
||||
"github.com/labstack/echo/v4"
|
||||
)
|
||||
|
||||
func MountRouter(app *echo.Echo, servs *service.Service) {
|
||||
mids := middleware.New(servs)
|
||||
|
||||
app.StaticFS("", static.StaticFs)
|
||||
api.MountRouter(app.Group("/api"), servs)
|
||||
web.MountRouter(app.Group(""), servs)
|
||||
web.MountRouter(app.Group(""), mids, servs)
|
||||
}
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
package auth
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/eduardolat/pgbackweb/internal/service"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/middleware"
|
||||
"github.com/labstack/echo/v4"
|
||||
)
|
||||
|
||||
@@ -9,12 +12,17 @@ type handlers struct {
|
||||
servs *service.Service
|
||||
}
|
||||
|
||||
func MountRouter(parent *echo.Group, servs *service.Service) {
|
||||
func MountRouter(
|
||||
parent *echo.Group, mids *middleware.Middleware, servs *service.Service,
|
||||
) {
|
||||
h := handlers{servs: servs}
|
||||
|
||||
parent.GET("/create-first-user", h.createFirstUserPageHandler)
|
||||
parent.POST("/create-first-user", h.createFirstUserHandler)
|
||||
|
||||
parent.GET("/login", h.loginPageHandler)
|
||||
parent.POST("/login", h.loginHandler)
|
||||
parent.POST("/login", h.loginHandler, mids.RateLimit(middleware.RateLimitConfig{
|
||||
Limit: 5,
|
||||
Period: 10 * time.Second,
|
||||
}))
|
||||
}
|
||||
|
||||
@@ -2,10 +2,13 @@ package web
|
||||
|
||||
import (
|
||||
"github.com/eduardolat/pgbackweb/internal/service"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/middleware"
|
||||
"github.com/eduardolat/pgbackweb/internal/view/web/auth"
|
||||
"github.com/labstack/echo/v4"
|
||||
)
|
||||
|
||||
func MountRouter(parent *echo.Group, servs *service.Service) {
|
||||
auth.MountRouter(parent.Group("/auth"), servs)
|
||||
func MountRouter(
|
||||
parent *echo.Group, mids *middleware.Middleware, servs *service.Service,
|
||||
) {
|
||||
auth.MountRouter(parent.Group("/auth"), mids, servs)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user